根据文档配置页面爬行索引,是否有更多关于Kentico 10使用的网络爬虫技术/引擎的信息?
我之所以问这个问题,是因为我想把它用于一个定制的爬虫项目,这个项目可以位于Kentico之外,并且仍然允许它与Kentico平台具有内在的兼容性。
发布于 2017-12-13 21:18:01
据我所知,从Kentico 10源代码中,Kentico SmartSearch使用的爬虫是完全专有的。它没有使用任何第三方图书馆。
它使用System.Web.HttpWebRequest
下载页面内容。完整的内容作为字符串反馈到SmartSearch索引器中。在此之后,它将通过文本提取并输入Lucene进行索引。
让Kentico SmartSearch使用外部爬虫并不容易。我们通常远离爬虫,因为与直接从数据库中提取数据的标准索引相比,执行起来非常昂贵。
Kentico支持在Windows服务中执行一些预定任务,但不支持搜索任务。
请注意,Kentico SmartSearch实际上并不通过发现链接来抓取站点。它使用内容树来确定它需要索引的内容。如果您希望索引其他内容,例如从您集成的系统中索引,则需要实现自定义搜索服务,如所述的这里。
其中一件事是让外部进程抓取想要索引的任何内容,并将原始的HTML内容存储起来。然后编写一个自定义的SmartSearch索引,从存储中提取数据,以便在Kentico中进行索引。如果您正在索引由Kentico管理的内容,您可以通过链接到文档事件将其提升到下一个级别。这应该允许您只在页面被更新时才能抓取页面。
发布于 2017-08-31 21:50:16
Kentico使用Lucene .NET。对于独立项目来说,这是一个很好的解决方案。我用它来驱动一个托管在Azure中的自定义web。
麦克
发布于 2017-09-01 04:33:28
Lucene使用Nutch http://nutch.apache.org/,它是一个开源的web爬虫来索引web内容。这是lucene提供的整个框架的一部分。
https://stackoverflow.com/questions/45985957
复制相似问题