Whoosh 是一個純python實現的全文搜索組件。Whoosh不但功能完善,還非常的快。
Whoosh的作者是MattChaput,由Side Effects Software公司開發。項目的最初用于Houdini(Side Effects Software公司開發的3D動畫軟件)的在線幫助系統。Side Effects Software公司將該項目開源。
主要特性:
* 敏捷的API(Pythonic API)。
* 純python實現,無二進制包。程序不會莫名其妙的崩潰。
* 按字段進行索引。
* 索引和搜索都非常的快 -- 是目前最快的純python全文搜索引擎。
* 良好的構架,評分模塊/分詞模塊/存儲模塊等各個模塊都是可插拔的。
* 功能強大的查詢語言(通過pyparsing實現功能)。
* 純python實現的拼寫檢查(目前唯一的純python拼寫檢查實現)
為啥選擇Whoosh
* 純python實現,省了編譯二進制包的繁瑣過程。
* python代碼比java更容易讀懂,而且用起來也更方便。(翻者注:這個容易引發口水)
* 在很多時候易用性比單純的最求速度更重要。
Whoosh從其他的開源搜索引擎中獲取了大量的靈感。 基礎構建參考Lucene,使用KinoSearch的索引算法,部分評分算法來自Terrier,英文的詞語態變化來自Minion.