我想知道是否有人对类似于mnogosearch的Python全文搜索引擎有任何建议。我试图让它像Mnogosearch一样运作,但不确定与其他选项相比如何(如果有更好的选择)。
例如,Haystack似乎在索引指定的Django模型字段方面做得很好,但我不确定它是否可以搜索网站的全部内容。Solr / Lucine似乎很有希望,但我对它并不太熟悉。飞快移动似乎也可能是一个有趣的选项,但我想知道Python实现是否会让它变慢?
我很擅长搜索,所以我试图围绕不同的选项。有没有人对哪种搜索技术能够很好地为整个网站编制索引有任何好的意见?
感谢阅读。任何评论都非常感谢。
乔
答案 0 :(得分:2)
恕我直言Solr可能是最佳选择,性能方面和功能方面,它基于经过严格测试的技术。如果你正在寻找一个纯粹的Python解决方案,Whoosh看起来很好 - 我没有在生产中使用它,只是检查出来并查看代码。它可能会慢一些,但我怀疑对搜索功能获得较轻流量的网站来说这是显而易见的。一个很好的功能是一个BM25F的实现,它可以考虑网站结构,如标题/标题/正文/页脚等,并被认为是通用网络搜索模型中的最新技术。
如果您正在使用Django,据我所知,Haystack会让您更改搜索引擎后端,就像您可以更改RDBMS后端一样。
我不确定“整个网站内容”究竟是什么意思。如果您的网站的大多数网页内容不是从模型内容生成的,那么使用集成搜索索引可能不是最佳选择,可能是IndexTank或Google网站搜索。但是在相反的情况下,如果你不熟悉任何一种搜索技术,我会推荐干草堆,因为它会让你的魔法生活更轻松。