16

我计划在我目前正在开发的应用程序中使用网络爬虫。我对 Nutch 进行了一些研究,并使用它进行了一些初步测试。但后来我遇到了scrapy。但是当我做了一些初步研究并浏览了有关scrapy的文档时,我发现它只能捕获结构化数据(您必须提供要从中捕获数据的 div 名称)。我正在开发的应用程序的后端是基于 Python 的,我理解 scrapy 是基于 Python 的,有些人认为 scrapy 比 Nutch 更好。

我的要求是从 1000 多个不同的网页中捕获数据,并在该信息中搜索相关关键字。scrapy 有什么方法可以满足相同的要求。

1)如果是的话,你能指出一些关于如何做到的例子吗?

2) 或者 Nutch+Solr 最适合我的要求

4

1 回答 1

18

Scrapy在你的情况下会很好地工作。

您不需要提供 div 名称 - 您可以获得任何您想要的内容:

Scrapy 有自己的数据提取机制。它们被称为 XPath 选择器(或简称为“选择器”),因为它们“选择”由 XPath 表达式指定的 HTML 文档的某些部分。

另外,您可以使用BeautifulSoupandlxml来从页面内容中提取数据。

此外,scrapy基于twisted,完全异步且快速。

SO上有很多例子scrapy spiders - 只需查看 tag questions即可。如果您有更具体的问题 - 请提出。

希望有帮助。

于 2013-06-19T19:55:52.463 回答