一、Scrapy框架简介
Scrapy
是:由Python
语言开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据,只需要实现少量的代码,就能够快速的抓取。
二、运行原理
Scrapy框架的运行原理看下面一张图就够了(事实上原理是比较复杂的,也不是三言两语能够说清楚的,因此感兴趣的读者可以进一步阅读更多的相关文章来了解,本文不做过多讲解)
Scrapy主要包括了以下组件:
-
引擎(Scrapy Engine)
-
Item 项目
-
调度器(Scheduler)
-
下载器(Downloader)
-
爬虫(Spiders)
-
项目管道(Pipeline)
-
下载器中间件(Downloader Middlewares)
-
爬虫中间件(Spider Middlewares)
-
调度中间件(Scheduler Middewares)
三. 入门
3.1安装
第一种:在命令行模式下使用pip命令即可安装:
$ pip install scrapy
第二种:首先下载,然后再安装:
$ pip download scrapy -d ./
# 通过指定国内镜像源下载
$pip download -i https://pypi.tuna.tsinghua.edu.cn/simple scrapy -d ./
进入下载目录后执行下面命令安装:
$ pip install Scrapy-1.5.0-py2.py3-none-any.whl
3.2使用
使用大概分为下面四步 1 创建一个scrapy项目
scrapy startproject mySpider
2 生成一个爬虫
scrapy genspider demo "demo.cn"
3 提取数据
完善spider 使用xpath等
4 保存数据
pipeline中保存数据
3.3 程序运行
在命令中运行爬虫
scrapy crawl qb # qb爬虫的名字
在pycharm中运行爬虫
from scrapy import cmdline
cmdline.execute("scrapy crawl qb".split())
四、基本步骤
Scrapy
爬虫框架的具体使用步骤如下:
“”
选择目标网站
定义要抓取的数据(通过Scrapy Items来完成的)
编写提取数据的spider
执行spider,获取数据
数据存储
五. 目录文件说明
当我们创建了一个scrapy项目后,继续创建了一个spider,目录结构是这样的:
下面来简单介绍一下各个主要文件的作用:
“scrapy.cfg :项目的配置文件
mySpider/ :项目的Python模块,将会从这里引用代码
mySpider/items.py :项目的目标文件
mySpider/pipelines.py :项目的管道文件
mySpider/settings.py :项目的设置文件
mySpider/spiders/ :存储爬虫代码目录
”
5.1 scrapy.cfg文件
项目配置文件。这个是文件的内容:
# Automatically created by: scrapy startproject
#
# For more information about the [deploy] section see:
# https://scrapyd.readthedocs.io/en/latest/deploy.html
[settings]
default = mySpider.settings
[deploy]
#url = http://localhost:6800/
project = mySpider
5.2 mySpider**/**
项目的Python模块,将