十个爬虫九个python写,九个python爬虫全部由scrapy写。社会上在招聘爬虫工程师时,百分之百会需要掌握scrapy爬虫框架。但是scrapy十个什么东西你知道吗?
什么是scrapy
我们先看百科词条
Scrapy是我们熟知的爬虫框架,我们用scrapy框架来获取互联网上的各种信息,然后再对这些信息数据清洗、归一化。这样的数据我们后面才能用来进行数据分析、数据挖掘、人工智能等操作。所以说,Scrapy是学习大数据的入门技能。
scrapy与requests的区别
scrapy是封装起来的框架,他包含了下载器,解析器,日志及异常处理,基于多线程, twisted的方式处理,对于固定单个网站的爬取开发,有优势,但是对于多网站爬取 100个网站,并发及分布式处理方面,不够灵活,不便调整与括展。
request 是一个HTTP库, 它只是用来,进行请求,对于HTTP请求,他是一个强大的库,下载,解析全部自己处理,灵活性更高,高并发与分布式部署也非常灵活,对于功能可以更好实现。
scrapy的优势是什么?
吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改。scrapy的特点是Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
同时scrapy 是异步的, 吞吐量很高。而且scrapy可高度自定义,生成一个爬虫文件之后,只需要写逻辑就行了,一个爬虫项目也就几个小时就可以完成。但是如果自己手动实现的话,则需要大量时间去写业务代码。
如何学习scrapy
框架涉及的东西非常多,并且在没有人指导时十分难学。最好的学习资料是官方的帮助文档,如果自己一头扎进去乱学一通的话,很容易就从入门到放弃了。建议每个同学在基础打得很扎实时候再去学习scrapy框架,不然你会遇到很多困惑的地方,很容易从入门到放弃。