数据收集是我日常工作的一部分,通常我收集数据的方式是使用urllib2收集html页面然后使用beautifulsoup来解析我想要的数据。
我经常听说过Python Scrapy包。我看了一下Scrapy,他们网站上的内容基本上是关于一般Scraping的重要性,而不是'Scrapy'本身。
我想知道一个对urllib2和beautifulsoup有合法知识的人,Scrapy很酷还是简单到让我放弃urllib2和bs4去?如果是这样,那么转换的最主要原因是什么?
可能来自以下方面:
快速实施机器人
机器人的稳健性
轻松维护您的机器人。
答案 0 :(得分:5)
这是我的见解。
Scrapy旨在使网页抓取代码更简单,更有条理。它也非常快(它基于扭曲)。
这些蜘蛛类,项目,项目管道确实可以帮助您组织获取页面,链接,解析响应,收集数据,将其存储在某个位置等过程。它为您提供了一个关于如何创建Web的创意和模板-scraping项目。
它远远超过urllib2
+ bs4
,它是一个框架:
Scrapy是一个用于抓取网站的应用程序框架 提取可用于各种各样的结构化数据 有用的应用程序,如数据挖掘,信息处理或 历史档案。
除了我提到的功能之外,还有很多其他功能,请参阅此信息丰富的overview文档页面,尤其是阅读What else?部分。
选择(urllib2
+ bs4
或Scrapy
)实际上取决于任务,网页抓取代码的复杂程度,是否需要将抓取的数据存储在某处或者不是等等。
希望有所帮助。