我们这几天讲了分布式爬虫的三个框架以及使用,小伙伴们不妨思考一个还有没有其他的框架呢?最近小编发现我们的老伙伴scrapy在分布式爬虫中同样可以用来抓取数据,这也算是学习中的意外惊喜。当然scrapy框架在分布式爬虫中的使用和之前学的还是有不一样的地方,今天我们就scrapy在分布式爬虫中的构建和模块中的新知识点进行学习,内容如下:
Scrapy
在Ubuntu安装Scrapy的步骤为:打开终端 >> 在终端输入命令:pip install scrapy >> 在终端输入命令:scrapy version >> 成功输出 Scrapy版本号则证明成功安装。
各模块作用
1. items
爬虫抓取数据的工作实际上是从非结构化数据(网页)中提取出结构化数据。虽然Scrapy框架爬虫可以将提取到的数据以Python字典 的形式返回,但是由于Python字典缺少结构,所以很容易发生返回数据不一致亦或者名称拼写的错误,若是Scrapy爬虫项目中包含复 数以上的爬虫则发生错误的机率将更大。因此,Scrapy框架提供了一个items模块来定义公共的输出格式,其中的Item对象是一个用于 收集Scrapy爬取的数据的简单容器。
2. Downloader Middleware
Downloader Middleware是一个Scrapy能全局处理Response和Request的、微型的系统。Downloader Middleware中定义的Downloader Middleware设有优先级顺序,优先级数字越低,则优先级越高,越先执行。在本次分布式爬虫中,我们定义了两个Downloader Middleware,一个用于随机选择爬虫程序执行时的User-Agent,一个用于随机选择爬虫程序执行时的IP地址。
3. settings
settings模块用于用户自定义Scrapy框架中Pipeline、Middleware、Spider等所有组件的所有动作,且可自定义变量或者日志动作。
考虑到之前我们也讲了不少scrapy框架的内容,今天的知识点只在python分布式爬虫中展开,算是对scrapy框架的一个内容的延伸,大家可以了解一下分布式Scrapyd的安装与配置。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试