hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - 文章 - 后端开发 - 正文 看Cosplay古风插画小姐姐,合集图集打包下载:炫龙网 · 炫龙图库

Python爬虫-scrapy引见及运用_后端开发

2019-11-30后端开发ki4网51°c
A+ A-
scrapy的流程

其流程可以形貌以下:

● 调理器把requests-->引擎-->下载中间件--->下载器

● 下载器发送要求,猎取相应---->下载中间件---->引擎--->爬虫中间件--->爬虫

● 爬虫提取url地点,组装成request对象---->爬虫中间件--->引擎--->调理器

● 爬虫提取数据--->引擎--->管道

● 管道举行数据的处置惩罚和保留

引荐进修:Python视频教程

注重:

图中绿色线条的示意数据的通报

注重图中中间件的位置,决议了其作用

注重个中引擎的位置,一切的模块之前互相自力,只和引擎举行交互

scrapy中每一个模块的细致作用

1.scrapy项目完成流程

建立一个scrapy项目:scrapy startproject 项目名

生成一个爬虫:scrapy genspider 爬虫名 许可爬取的局限

提取数据:完美spider,运用xpath等要领

保留数据:pipeline中保留数据

2. 建立scrapy项目

敕令:scrapy startproject +<项目名字>

示例:scrapy startproject myspider

生成的目次和文件效果以下:

settings.py中的重点字段和内在

● USER_AGENT 设置ua

● ROBOTSTXT_OBEY 是不是恪守robots协定,默许是恪守

● CONCURRENT_REQUESTS 设置并发要求的数目,默许是16个

● DOWNLOAD_DELAY 下载耽误,默许无耽误

● COOKIES_ENABLED 是不是开启cookie,即每次要求带上前一次的cookie,默许是开启的

● DEFAULT_REQUEST_HEADERS 设置默许要求头

● SPIDER_MIDDLEWARES 爬虫中间件,设置历程和管道雷同

● DOWNLOADER_MIDDLEWARES 下载中间件

建立爬虫

敕令:scrapy genspider +<爬虫名字> + <许可爬取的域名>

生成的目次和文件效果以下:

完美spider

完美spider即经由过程要领举行数据的提取等操做:

注重:

● response.xpath要领的返回效果是一个相似list的范例,个中包括的是selector对象,操纵和列表一样,然则有一些分外的要领

● extract() 返回一个包括有字符串的列表

● extract_first() 返回列表中的第一个字符串,列表为空没有返回None

● spider中的parse要领必需有

● 须要抓取的url地点必需属于allowed_domains,然则start_urls中的url地点没有这个限定

● 启动爬虫的时刻注重启动的位置,是在项目途径下启动

数据通报到pipeline

为何要运用yield?

● 让全部函数变成一个生成器,有什么优点呢?

● 遍历这个函数的返回值的时刻,挨个把数据读到内存,不会形成内存的霎时占用太高

● python3中的range和python2中的xrange同理

注重:

yield可以通报的对象只能是:BaseItem,Request,dict,None

6. 完美pipeline

pipeline在settings中可以开启多个,为何须要开启多个?

● 差别的pipeline可以处置惩罚差别爬虫的数据

● 差别的pipeline可以举行差别的数据处置惩罚的操纵,比方一个举行数据洗濯,一个举行数据的保留

pipeline运用注重点

● 运用之前须要在settings中开启

● pipeline在setting中键示意位置(即pipeline在项目中的位置可以自定义),值示意间隔引擎的远近,越近数据会越先经由

● 有多个pipeline的时刻,process_item的要领必需return item,不然后一个pipeline取到的数据为None值

● pipeline中process_item的要领必需有,不然item没有办法接收和处置惩罚

● process_item要领接收item和spider,个中spider示意当前通报item过来的spider

本文来自 python教程 栏目,迎接进修!

以上就是Python爬虫-scrapy引见及运用的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
Python爬虫-scrapy引见及运用_后端开发

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签:

发表评论

选填

必填

必填

选填

请拖动滑块解锁
>>