文章目录
絮叨一下
Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常方便
Scrapt五大基本构成
Scrapy框架主要由五大组件组成,它们分别是调度器(Scheduler)、下载器(Downloader)、爬虫(Spider)和实体管道(Item
Pipeline)、Scrapy引擎(Scrapy Engine)。下面我们分别介绍各个组件的作用。(1)、调度器(Scheduler):
调度器,说白了把它假设成为一个URL(抓取网页的网址或者说是链接)的优先队列,由它来决定下一个要抓取的网址是
什么,同时去除重复的网址(不做无用功)。用户可以自己的需求定制调度器。
- (2)、下载器(Downloader):
下载器,是所有组件中负担最大的,它用于高速地下载网络上的资源。Scrapy的下载器代码不会太复杂,但效率高,主要的原因是Scrapy下载器是建立在twisted这个高效的异步模型上的(其实整个框架都在建立在这个模型上的)。
- (3)、 爬虫(Spider):
爬虫,是用户最关心的部份。用户定制自己的爬虫(通过定制正则表达式等语法),用于从特定的网页中提取自己需要的信息,即所谓的实体(Item)。
用户也可以从中提取出链接,让Scrapy继续抓取下一个页面。
- (4)、 实体管道(Item Pipeline):
实体管道,用于处理爬虫(spider)提取的实体。主要的功能是持久化实体、验证实体的有效性、清除不需要的信息。
- (5)、Scrapy引擎(Scrapy Engine):
Scrapy引擎是整个框架的核心.它用来控制调试器、下载器、爬虫。实际上,引擎相当于计算机的CPU,它控制着整个流程。
如果还是不明白看一下csdn大佬整理的图
1.安装
-
linux下安装:
pip install scrapy
安装一些依赖的文件
sudo apt-get install python-dev python-pip libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libssl-dev
如果报错:说error: command 'x86_64-linux-gnu-gcc' failed with exit objectstatus 1
那就输入命令:
sudo apt-get install python3.8-dev
-
Windows安装:
pip install scrapy
安装一些依赖的文件
pip install pypiwin32
2.新建项目
-
新建项目首先需要使用cd 切换进你想要存放的目录中然后输入:
scrapy startproject 项目名
3.新建爬虫程序
scrapy genspider 爬虫名 爬虫的域名
注意不可以使用跟项目名重名
4.项目目录结构
-
items.py
: 用来存放爬虫爬下来的数据的模型# 比如作者,以及内容 import scrapy class ZonghengItem(scrapy.Item): name = scrapy.Field() time = scrapy.Field() type = scrapy.Field() introduction = scrapy.Field()
-
middlewares.py
: 用来存放各种中间件的文件 -
pipelines.py
: 将items的模型存储在本地磁盘中-
这里面有三个函数
使用的时候需要取消掉
settings.py
中的ITEM_PIPELINES = { 'qsbk.pipelines.QsbkPipeline': 300, }
# 用来处理获取的item数据 def process_item(self, item, spider
-