大家好,又见面了,我是你们的朋友全栈君
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://javaforall.cn/193742.html原文链接:https://javaforall.cn