Scrapy框架快速创建项目命令、框架的结构
Scrapy在爬虫开发领域是非常不错的一款框架,如果要从事爬虫开发那么这款框架一定要非常熟悉,尽管在实际开发中可能用不上,但是其中的架构思想也能让自己写的爬虫质量有不一般的提升。
Scrapy框架应该掌握的几条命令:
CMD命令行界面执行 scrapy shell [url]
该条命令常用于scrapy开发前的测试,如:scrapy shell
执行完该条命令后可运行,view(response)将用默认浏览器打开下载的URL页面。
Scrapy startproject [name]
该条命令用于创建一个Scrapy框架开发的项目文件,后接项目名
scrapy genspider [name] [domain]
创建项目后进入项目文件夹,执行该命令快速创建爬虫程序,后接爬虫名、爬去站点的域名,将在spiders文件夹下生成一个基本框架的爬虫程序。
scrapy crawl [name] -o [file]
该条命令是运行name名字的爬虫,并将数据保存为file,注意file是带格式的文件名,目前支持json、json lines、csv、xml、pickle、marshal。
上面命令是使用频率最高的命令,记住他们可以事半功倍。
scrapy的框架结构
scrapy框架分功能模块分为内部组件、用户实现、可选组件,数据分为requests(请求)、response(响应)、Items(提取的数据),三种数据在各个功能组件之间流动,从而实现了页面的下载——解析——再下载的循环过程。
其工作过程:
-
用户编写爬虫主程序将需要下载的页面请求requests递交给引擎
-
引擎将请求转发给调度(调度实现了优先级、去重等策略)
-
调度从队列中取出一个请求,交给引擎转发给下载器(引擎和下载器中间有中间件,作用是对请求加工如:对requests添加代理、ua、cookie,response进行过滤等)
-
下载器取回页面后,交由引擎转发给爬虫主程序解析,这个时候解析函数将产生两类数据,一种是items、一种是requests(新请求),其中requests按上面步骤交给调度器;items交给数据管道(数据管道实现数据的最终处理)
scrapy框架再我们自定义开发中,具有很好的参考作用,其中高可扩展性、低耦合值得深入学习。
同时本月的写作主题是scrapy框架,由浅入深、横向整合,力求让读者形成完整的知识框架。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
3月12日云栖精选夜读 | 安全多方计算新突破!阿里首次实现“公开可验证” 的安全方案
近日,阿里安全双子座实验室与马里兰大学等高校合作的论文《Covert Security with Public Verifiability: Faster, Leaner, and Simpler 》【1】被欧洲密码年会(Eurocrypt)2019接收。 热点热议 安全多方计算新突破!阿里首次实现“公开可验证” 的安全方案 作者:技术小能手发表在:阿里技术 NoSQL最新现状和趋势:云NoSQL数据库将成重要增长引擎 作者:所在jason发表在:阿里云数据库ApsaraDB 阿里云安全肖力:从RSA2019看安全技术发展的十个机遇 作者:云安全专家 知识整理 补码无符号数互换 作者:cloud_ruiy 零基础搭建PHP本地环境并安装WordPress网站(图文指导) 作者:外贸狗 服务器里如何查杀网站后门文件 作者:网站安全 直播间搭建过程中较为核心的三个步骤 作者:v_acwhr gtid主从复制原理和报错解决 作者:JAAT9999 美文回顾 kafka 的有序与无序 作者:五维空间s 【直播预告】阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第19讲):J...
- 下一篇
【直播回顾】云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第19讲):Java Spring Cloud微服务架构模...
主讲人:徐雷(云栖社区特邀Java专家)徐雷,花名:徐雷frank;资深架构师,MongoDB中文社区联席主席,吉林大学计算机学士,上海交通大学硕士。从事了 10年+开发工作,专注于分布式架构,Java Spring Boot、Spring Cloud、MongoDB、Redis。 喜欢专研技术问题,擅长讲课,《MongoDB实战》第2版、《24种云计算架构设计模式》译者,2018年5月受邀成为《阿里巴巴Java和MongoDB技术认证》讲师,2018年8月与阿里巴巴资深专家P9叶翔直播《阿里巴巴MongoDB高级实战课程》 点击关注徐雷的云栖社区个人主页 内容概要: Java Spring Cloud最早、最成熟、最流行的开源微服务生态解决方案,经过许多大型互联网公司生产检验的,随着阿里巴巴开源Spring Cloud Alibaba项
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 2048小游戏-低调大师作品
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- MySQL8.0.19开启GTID主从同步CentOS8
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池