爬虫之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 ...
随机推荐
- 是男人就过八题A_A String Game题解
题意 给一个字符串\(s\),和\(n\)个子串\(t[i]\),两个人博弈,每次取出一个串\(t[i]\),在后面加入一个字符,保证新字符串仍然是\(s\)的子串,无法操作的人输. 分析 n个子串, ...
- 两小无猜的爱恨情仇--java =+和+=揭秘
故事背景 当一个人问另一个人“敢不敢”的时候,另一个人必须说“敢”,这就是游戏的规则.小男孩朱利安和小女孩苏菲的相遇即开始于这样一场孩童的闹剧,一个精美的铁盒子就是他们游戏的见证.说脏话,扰乱课堂,在 ...
- 浅谈个人对客户端JavaScript同步、异步、执行顺序等概念的理解
一.同步和异步的概念. 同步:即按代码的顺序执行任务. 在下列代码中,按照同步概念,则是先打印1后打印2. console.log(1); console.log(2); 异步:即执行一个任务的同时执 ...
- git checkout 提示 “error: The following untracked working tree files would be overwritten by checkout” 解决
问题描述 Windows 或者 macOS 操作系统中,文件名是不区分大小写的.对于已经提交到仓库中的文件修改文件名的大小写,然后又用 git rm 命令将老文件从 Git 仓库删除掉,并保存下新的文 ...
- SpringBoot2+Netty打造通俗简版RPC通信框架
2019-07-19:完成基本RPC通信! 2019-07-22:优化此框架,实现单一长连接! 2019-07-24:继续优化此框架:1.增加服务提供注解(带版本号),然后利用Spring框架的在启动 ...
- 基于Spring AOP实现的权限控制
1.AOP简介 AOP,面向切面编程,往往被定义为促使软件系统实现关注点的分离的技术.系统是由许多不同的组件所组成的,每一个组件负责一块特定的功能.除了实现自身核心功能之外,这些组件还经常承担着额外的 ...
- 关于Git的使用方法
1.查看Git的使用方法 : git 2.把当前文件夹变为一个git仓库 创建git仓库:git init 3.查看当前仓库文件变化情况:git status 4.添加修改:git add (可使用g ...
- redis安装及启动
Redis 的安装及启动停止 下载 https://redis.io/download 软件copy至虚拟机中,常用的路径为/root/software 开始安装 安装gcc 目的是为了编译软件 yu ...
- MySQL索引的建立与实现
一.索引介绍 1.MySQL中,所有的数据类型都可以被索引,索引包括普通索引,唯一性索引,全文索引,单列索引,多列索引和空间索引等. 2.额外的:我已知的自动创建索引的时机:创建主键,唯一,外键约束的 ...
- Qt5教程: (2) 信号与槽
1. 新建工程 新建一个"Qt Widgets Application"工程 2. 添加按钮 一个Qt工程会有很多个控件, 如果把逻辑代码都写在main函数里, main函数会非常 ...