scrapy框架

概念

scrapy是一个Python编写的开源网络爬虫框架。它是一个被设计用于爬取网络数据、提取结构性数据的框架。

Scrapy使用了Twisted['twistid']异步网络框架,可以加快我们的下载速度

作用

少量的代码,就能快速的抓取

流程描述如下:

1.爬虫中起始的url构成request对象-->爬虫中间件-->引擎-->调度器

2.调度器把request-->引擎-->下载中间件-->下载器

3.下载器发送请求,获取response响应---->下载中间件---->引擎---->爬虫中间件---->爬虫

4.爬虫提取url地址,组装成request对象---->爬虫中间件---->引擎---->调度器,重复步骤2

5.爬虫提取数据---->引擎---->管道处理和保存数据

各个模块只和引擎做交互

python 复制代码
class Item(object):
    def __init__(self, url, headers):
        self.url  = url
        self.headers = headers

item = Item('https://www.baidu.com', 'headers')
print(item)
print(item.url)
print(item.headers)
    

将url做成一个对象传给引擎

scrapy的三个内置对象

request请求对象:由url method post_data headers等构成

response响应对象:由url body status headerss等构成

item数据对象:本质是个字典

scrapy中每个模块的具体作用

引擎 数据和信号的传递

调度器 任务队列

下载器

爬虫 起始的url 解析

管道 保存数据

中间件 定制化操作

scrapy的入门使用

安装 pip3 install scrapy

相关推荐
万粉变现经纪人43 分钟前
如何解决pip安装报错ModuleNotFoundError: No module named ‘dash’问题
python·scrapy·pycharm·flask·pip·策略模式·dash
万粉变现经纪人1 天前
如何解决pip安装报错ModuleNotFoundError: No module named ‘plotly’问题
python·scrapy·plotly·pycharm·flask·pandas·pip
t_hj7 天前
Scrapy
前端·数据库·scrapy
陌上倾城落蝶雨13 天前
python爬虫
python·scrapy·pycharm
猫头虎15 天前
什么是 npm、Yarn、pnpm? 有什么区别? 分别适应什么场景?
前端·python·scrapy·arcgis·npm·beautifulsoup·pip
t_hj20 天前
scrapy项目开发流程
scrapy
shenyan~23 天前
关于 scrapy框架 详解
scrapy
失败又激情的man1 个月前
Scrapy进阶封装(第四阶段:中间件设置,动态UA,ip代理池)
爬虫·scrapy·中间件
Blue桃之夭夭1 个月前
Python爬虫(六):Scrapy框架
爬虫·python·scrapy