爬虫之scrapy安装与基本使用
安装
pip install scrapy
基本使用
创建项目
scrapy startproject 项目名
cd 项目名
生成爬虫
- 创建spider爬虫:scrapy genspider 爬虫名 允许的域名
- 爬虫类需要继承scrapy.Spider
- 爬虫的名字: name
- 允许的域名: allowed_domains
- 起始的url: start_urls
- 解析函数:
- 创建crawlspider爬虫:scrapy genspider -t crawl 爬虫名称 允许的域
- 完善提取URL的规则
- Rule表示规则
- rules是一个元组或者是列表 --> Rule对象
- rules = (Rule(LinkExtractor(allow=r'Items/'), callback='parse_item', follow=True),)
- LinkExtractor[必选]:连接提取器,可以通过正则或者是xpath来提取URL
- allow: 用于指定一个正则表达, 只有与该正则匹配的链接才被提取出来
- restrict_xpaths: 用于指定一个XPATH, 只有该XPATH指定的区域中链接才被提取出来
- callback[可选]: 表示经过连接提取器提取出来的url对应响应的解析函数,可以没有,表示该响应不需要解析函数来处理
- follow[可选]:连接提取器提取的url地址对应的响应是否还会继续被rules中的规则进行提取,True表示会,False表示不会
完善爬虫
- response.xpath('xpath语法') --> 返回selector对象
- extract() --> 返回提取到的字符串列表 --> 无数据[]
- extract_first() --> 返回提取到的第一个字符串 --> 无数据None
注意: yield后不可以接列表
保存数据
- 完善Pipeline类
- 在settings.py中开启管道
运行项目
scrapy crawl 爬虫名
CrawlSpider 与 Spider如何选择
自定义爬虫, 是继承CrawlSpider 还是 Spider呢?
- 一般当一类页面中可以获取所有数据的时候, 使用CrawlSpider
- 需要从多类页面中提取数据, 进行组合, 使用Spider
爬虫之scrapy安装与基本使用的更多相关文章
- python爬虫框架—Scrapy安装及创建项目
linux版本安装 pip3 install scrapy 安装完成 windows版本安装 pip install wheel 下载twisted,网址:http://www.lfd.uci.edu ...
- Python爬虫框架--Scrapy安装以及简单实用
scrapy框架 框架 -具有很多功能且具有很强通用性的一个项目模板 环境安装: Linux: pip3 install scrapy Windows: ...
- python爬虫的scrapy安装+pymongo的安装
我的:python2.7版本 32位 注意scrapy只支持2.7及以上的版本. 1.安装python 2.安装pip 安装pip就不赘述了,网上很多教学 pip安装时要注意更新,如果pip版本 ...
- Python爬虫框架Scrapy安装使用步骤
一.爬虫框架Scarpy简介Scrapy 是一个快速的高层次的屏幕抓取和网页爬虫框架,爬取网站,从网站页面得到结构化的数据,它有着广泛的用途,从数据挖掘到监测和自动测试,Scrapy完全用Python ...
- python爬虫之scrapy安装(一)
简介: Scrapy,Python开发的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrap ...
- [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍
前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...
- 转:Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)
Scrapy在window上的安装教程见下面的链接:Scrapy安装教程 上述安装教程已实践,可行.(本来打算在ubuntu上安装Scrapy的,但是Ubuntu 磁盘空间太少了,还没扩展磁盘空间,所 ...
- Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)
Scrapy在window上的安装教程见下面的链接:Scrapy安装教程 上述安装教程已实践,可行.(本来打算在ubuntu上安装Scrapy的,但是Ubuntu 磁盘空间太少了,还没扩展磁盘空间,所 ...
- Linux 安装python爬虫框架 scrapy
Linux 安装python爬虫框架 scrapy http://scrapy.org/ Scrapy是python最好用的一个爬虫框架.要求: python2.7.x. 1. Ubuntu14.04 ...
随机推荐
- [PHP] php, apache, VS Code安装与配置
1. 下载
- Butter Knife
Butter Knife,专门为Android View设计的绑定注解,专业解决各种findViewById. 简介 对一个成员变量使用@BindView注解,并传入一个View ID, Butter ...
- TensorFlow2.0(六):Dataset
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- idea中的java web项目(添加jar包介绍)和java maven web项目目录结构
java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...
- Cocos Creator实现左右跳游戏,提供完整游戏代码工程
1. 玩法说明 游戏开始后,点击屏幕左右两侧,机器人朝左上方或右上方跳一步,如果下一步有石块,成功得1分,否则游戏结束. 2. 模块介绍 游戏场景分为2个:主页场景(home).游戏场景(game) ...
- python编程基础之六
运算符和表达式 +,-,*,/, 加减乘除 %, 模运算 **, 幂运算 // 整除 运算优先级方面:** >正负号(+,-)>//,%>*,/>+,- 模运算有一 ...
- 【NOIP2011】选择客栈
题文: 丽江河边有n 家很有特色的客栈,客栈按照其位置顺序从1 到n 编号.每家客栈都按照某一种色调进行装饰(总共k 种,用整数0 ~ k-1 表示),且每家客栈都设有一家咖啡店,每家咖啡店均有各自的 ...
- 合并果子(STL优先队列)
STL优先队列:priority_queue 定义:priority_queue<int>q; 从小到大:priority_queue<int,vector<int>,g ...
- SEER见证人操作指南
SEER的见证人设计 共识方式 在区块生产者的产生方式上,SEER采取了PoS的共识方式,用户通过智能合约抵押自己持有的SEER竞选主力见证人(区块生产者). 对于SEER区块链来说,制约区块链TPS ...
- 打造属于自己的 HTML/CSS/JavaScript 实时编辑器
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://blog.bitsrc.io/build-an-html-css-js-playgr ...