Each Answer to this Q is separated by one/two green lines.
The ruby folks have Ferret. Someone know of any similar initiative for Python? We’re using PyLucene at current, but I’d like to investigate moving to pure Python searching.
I recently found pyndexter. It provides abstract interface to various different backend full-text search engines/indexers. And it ships with a default pure-python implementation.
These things can be disastrously slow though in Python.
For some applications pure Python is overrated. Take a look at Xapian.
+1 to the Xapian and Pyndexter answers.
Ferret is actually written in C with Ruby bindings on top. A pure Ruby search engine would be even slower than a pure Python one. I would love to see “someone else” write a Cython/Pyrex layer for Python interface to Ferret, but won’t do it myself because why bother when there are Python bindings for Xapian.
After weeks of searching for this, I found a nice Python solution: repoze.catalog. It’s not strictly Python-only because it uses ZODB for storage, but it seems a better dependency to me than something like SOLR.