六.Requests库和Scrapy库比较:
1.相同点:
(1)两者都可以进行页面请求和爬取,python爬虫的两个重要技术路线;
(2)两者可用性都好,文档丰富,入门简单;
(3)两者都没有处理js,提交表单,应对验证码等功能。
2.不同点
(1)requests库主要是页面爬取,scrapy库主要是网站爬虫;
(2)Requests功能库,scrapy主要是框架;
(3)Requests库并发性考虑不足,性能较差;scrapy并发性好,性能较高;
(4)Requests重点在于页面下载,scrapy在于爬虫结构;
(5)Requests定制灵活,scrapy一般定制灵活,深度定制困难;
(6)Requests上手简单,scrapy入门稍难;
3.选用那个技术路线开发爬虫
(1)非常小的需求,requests库;
(2)不太小的需求,Scrapy框架;
(3)定制程度很高的需求(不考虑规模),自搭框架,requests>Scrapy。
4.Scrapy命令行
(1)Scrapy是为持续运行设计专业爬虫框架,提供操作的Scrapy命令行。
(2)Scrapy常用命令:startproject:创建一个新工程;scrapy startproject[dir]
Genspider:创建一个爬虫;scrapy genspider [options]
Crawl:运行一个爬虫;Scrapy crawl
5.创建一个scrapy框架实例:
步骤1:建立一个Scrapy爬虫工程
1.创建一个工程
3.生成工程目录:
(1)外层目录;
(2)部署Scrapy爬虫的配置文件;
打开python123demo后的截图展示:
每个文件作用:
(1)缓存目录无需修改
(2)Spiders代码模板目录(继承类)
(3)初始化脚本
(4)Items代码模块(继承类);
(5)Middlewares代码模块(继承类);
(6)Pipelines代码模块,(继承类);
(7)Scrapy爬虫配置文件 ;(优化爬虫需要操作)(初始文件,无需修改)
步骤2:在工程中产生的Scrapy爬虫;
(1)生成一个demo.py文件;
产生文件结果展示:
打开demo.py文件:
注:parse():用于处理响应,解析内容形成字典,发现新的URL爬取请求;
步骤3:配置产生的spider爬虫;
步骤4:运行scrapy框架爬虫
产生结果:(点开即可直接看所爬取内容)
总结:通过request和scrapy框架比较,比较其优缺点,通过一个简单的案例简单介绍scrapy框架写爬虫教程;
转载:https://blog.csdn.net/qq_44176343/article/details/106076257