Ruby人々は Ferret を持っています。誰かがPythonの同様のイニシアチブを知っていますか?現在PyLuceneを使用していますが、純粋な=への移行を調査したいと思います。 Python検索中。
Whoosh は、luceneに似ていますが、純粋なpythonである新しいプロジェクトです。
最近見つけた pyndexter 。さまざまなバックエンドの全文検索エンジン/インデクサーへの抽象的なインターフェースを提供します。また、デフォルトの純粋なPython実装が付属しています。
これらのことは、Pythonでは悲惨なほど遅くなる可能性があります。
一部のアプリケーションでは、純粋なPythonが過大評価されています。Xapianを見てください。
XapianとPyndexterの回答に+1します。
フェレットは実際にはCで書かれており、その上にRubyバインディングがあります。純粋なRuby検索エンジンは、純粋なPython検索エンジンよりもさらに低速になります。 「他の誰か」がFerretへのPythonインターフェース用のCython/Pyrexレイヤーを作成するのを見たいのですが、XapianのPythonバインディングがあるのになぜわざわざするので、自分では作成しません。 。
純粋でないPythonの場合、 Sphinx Search with Python APIが最も高速に動作します。複数のブログのベンチマークから、Sphinx SearchはLuceneよりもはるかに高速で、使用するメモリもはるかに少なくなります。そしてそれはCにあります。
python and web2py をフレームワークとして使用して、それに基づいたマルチドキュメント検索エンジンを開発しています。
lupy は純粋なPythonへのluceneポートでした。 lupyの人々はPyLuceneの使用を提案しています 。ごめんなさい。たぶん、Javaソースを Jython と組み合わせて使用できます。
これを数週間検索した後、私は素敵なPythonソリューション: repoze.catalog を見つけました。ストレージにZODBを使用しているため、厳密にはPythonだけではありませんが、 SOLRのようなものよりも私への依存度が高い。