Skip to main content

Fast, pure-Python full text indexing, search, and spell checking library.

Project description

About Whoosh

Whoosh is a fast, featureful full-text indexing and searching library implemented in pure Python. Programmers can use it to easily add search functionality to their applications and websites. Every part of how Whoosh works can be extended or replaced to meet your needs exactly.

Some of Whoosh’s features include:

  • Pythonic API.

  • Pure-Python. No compilation or binary packages needed, no mysterious crashes.

  • Fielded indexing and search.

  • Fast indexing and retrieval – faster than any other pure-Python, scoring, full-text search solution I know of.

  • Pluggable scoring algorithm (including BM25F), text analysis, storage, posting format, etc.

  • Powerful query language parsed by pyparsing.

  • Pure Python spell-checker (as far as I know, the only one).

Whoosh might be useful in the following circumstances:

  • Anywhere a pure-Python solution is desirable to avoid having to build/compile native libraries (or force users to build/compile them).

  • As a research platform (at least for programmers that find Python easier to read and work with than Java ;)

  • When an easy-to-use Pythonic interface is more important to you than raw speed.

Whoosh was created and is maintained by Matt Chaput. It was originally created for use in the online help system of Side Effects Software’s 3D animation software Houdini. Side Effects Software Inc. graciously agreed to open-source the code.

This software is licensed under the terms of the Apache License version 2. See LICENSE.txt for information.

Installing Whoosh

If you have setuptools or pip installed, you can use easy_install or pip to download and install Whoosh automatically:

$ easy_install Whoosh

or

$ pip install Whoosh

Learning more

Getting the source

Download source releases from PyPI at http://pypi.python.org/pypi/Whoosh/

You can check out the latest version of the source code using Mercurial:

hg clone http://bitbucket.org/mchaput/whoosh

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

Whoosh-1.0.0b16.zip (310.9 kB view details)

Uploaded Source

Whoosh-1.0.0b16.tar.gz (261.2 kB view details)

Uploaded Source

Built Distribution

Whoosh-1.0.0b16-py2.6.egg (407.5 kB view details)

Uploaded Source

File details

Details for the file Whoosh-1.0.0b16.zip.

File metadata

  • Download URL: Whoosh-1.0.0b16.zip
  • Upload date:
  • Size: 310.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Whoosh-1.0.0b16.zip
Algorithm Hash digest
SHA256 607cca99143a809b612c15ccc9b3d3092959631f9c62e2a8b41ede2139800354
MD5 eef30b9b560d765ea7a8581630f9ee28
BLAKE2b-256 d8f06c324d2546fc886de3343118a6efe8da3f22aa1951ffa98d6a20d797a11f

See more details on using hashes here.

File details

Details for the file Whoosh-1.0.0b16.tar.gz.

File metadata

  • Download URL: Whoosh-1.0.0b16.tar.gz
  • Upload date:
  • Size: 261.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Whoosh-1.0.0b16.tar.gz
Algorithm Hash digest
SHA256 223662872fc6e866812ca13aaecddafc1a86108a98cffb17115ad399caac1aa3
MD5 aaa00e160f236641fd5ce111589564ca
BLAKE2b-256 0565bcfae02eb6890a11ced00ba1ffa7016451274c24bf388f25e6caee7a9daf

See more details on using hashes here.

File details

Details for the file Whoosh-1.0.0b16-py2.6.egg.

File metadata

File hashes

Hashes for Whoosh-1.0.0b16-py2.6.egg
Algorithm Hash digest
SHA256 c9ebbe5333be9c48fa0f637277673befebb281f53c171209f72d3bd98f4c32c9
MD5 4dbc6f1750b5290329e975d91375804d
BLAKE2b-256 b675f90f42479aec5a5d0e931318ad5192f6836ac170d91de5bca93936b5d730

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page