(一)scrapy安装和基本使用

(一)scrapy安装和基本使用,第1张

1、Scrapy是什么
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理
或存储历史数据等一系列的程序中。
2、scrapy安装

安装过程中出错:
如果安装出现一下错误
building ‘twisted.test.raiser’ extension
error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++
Build Tools”: http://landinghub.visualstudio.com/visual‐cpp‐build‐tools

解决方案:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
下载twisted对应版本的whl文件(如我的Twisted‐17.5.0‐cp37‐cp37m‐win_amd64.whl),cp后面是
python版本,amd64代表64位,运行命令:
pip install C:\Users…\Twisted‐17.5.0‐cp37‐cp37m‐win_amd64.whl
pip install scrapy

3、scrapy项目的创建以及运行
3.1scrapy项目的创建
在pycharm终端通过cd命令进入创建项目路径下的文件夹,然后创建一个名为spider_baidu项目(注意:项目名称的定义务必不出现中文)。

创建项目步骤如下图所示:

创建成功后该项目忽然多了5个python文件,如图所示:
You can start your first spider with:
cd spider_baidu
scrapy genspider example example.com

因此该项目(spider_baidu)组成:
spider_baidu
init.py
自定义的爬虫文件.py ‐‐‐》 由我们自己创建,是实现爬虫核心功能的文件
init.py items.py ‐‐‐》定义数据结构的地方,是一个继承自scrapy.Item的类
middlewares.py ‐‐‐》中间件 代理
pipelines.py ‐‐‐》管道文件,里面只有一个类,用于处理下载数据的后续处理默认是300优先级,值越小优先级越高(1‐1000)
settings.py ‐‐‐》配置文件 比如:是否遵守robots协议,User‐Agent定义等

4.创建爬虫文件:
(1)进入到spiders文件夹
cd 目录名字/目录名字/spiders
(2)scrapy genspider 爬虫名字 网页的域名
现以百度网站为例:
eg:scrapy genspider baidu https://www.baidu.com/

spider文件目录下出现baidu.py文件,点击后可以看到自动生成内容:
baidu.py爬虫文件的基本组成:
继承scrapy.Spider类
name = ‘baidu’ ‐‐‐》 运行爬虫文件时使用的名字
allowed_domains ‐‐‐》 爬虫允许的域名,在爬取的时候,如果不是此域名之下的url,会被过滤掉
start_urls ‐‐‐》 声明了爬虫的起始地址,可以写多个url,一般是一个
parse(self, response) ‐‐‐》解析数据的回调函数
5.运行爬虫文件:
scrapy crawl 爬虫名称
eg:scrapy crawl baidu

以上出现报错,只需在settings.py文件把ROBOTSTXT_OBEY = True注释掉再运行即可

再运行之后,如下图所示:

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/735156.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存