首页 > 其他 > 详细

爬虫之scrapy安装与基本使用

时间:2019-10-25 21:25:05      阅读:85      评论:0      收藏:0      [点我收藏+]
安装:pip install scrapy
基本使用 
1. 创建项目:scrapy startproject 项目名
cd 项目名
2. 生成爬虫
1. 创建spider爬虫:scrapy genspider 爬虫名 允许的域名
1. 爬虫类需要继承scrapy.Spider
2. 爬虫的名字: name
3. 允许的域名: allowed_domains
4. 起始的url: start_urls
5. 解析函数:

2. 创建crawlspider爬虫:scrapy genspider -t crawl 爬虫名称 允许的域名
完善提取URL的规则:
rules是一个元组或者是列表 --> Rule对象
rules = (Rule(LinkExtractor(allow=r‘Items/‘), callback=‘parse_item‘, follow=True),)
Rule表示规则
LinkExtractor[必选]:连接提取器,可以通过正则或者是xpath来提取URL
allow: 用于指定一个正则表达, 只有与该正则匹配的链接才被提取出来
restrict_xpaths: 用于指定一个XPATH, 只有该XPATH指定的区域中链接才被提取出来
callback[可选]: 表示经过连接提取器提取出来的url对应响应的解析函数,可以没有,表示该响应不需要解析函数来处理
follow[可选]:连接提取器提取的url地址对应的响应是否还会继续被rules中的规则进行提取,True表示会,False表示不会
3. 完善爬虫
1. response.xpath(‘xpath语法‘) --> 返回selector对象
2. extract() --> 返回提取到的字符串列表 --> 无数据[]
3. extract_first() --> 返回提取到的第一个字符串 --> 无数据None
注意: yield后不可以接列表
   4. 保存数据
     完善Pipeline类
在settings.py中开启管道
运行项目:scrapy crawl 爬虫名



CrawlSpider 与 Spider如何选择:
自定义爬虫, 是继承CrawlSpider 还是 Spider呢?
1. 一般当一类页面中可以获取所有数据的时候, 使用CrawlSpider
2. 需要从多类页面中提取数据, 进行组合, 使用Spider

 

 

爬虫之scrapy安装与基本使用

原文:https://www.cnblogs.com/zry-yt/p/11740877.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!