安装

pip install scrapy

基本使用 

创建项目

scrapy startproject 项目名

cd 项目名

生成爬虫

  • 创建spider爬虫:scrapy genspider 爬虫名 允许的域名
  1. 爬虫类需要继承scrapy.Spider
  2. 爬虫的名字: name
  3. 允许的域名: allowed_domains
  4. 起始的url: start_urls
  5. 解析函数:
  • 创建crawlspider爬虫:scrapy genspider -t crawl 爬虫名称 允许的域
  1. 完善提取URL的规则
  2. Rule表示规则
    1. rules是一个元组或者是列表 --> Rule对象
    2. 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安装与基本使用的更多相关文章

  1. python爬虫框架—Scrapy安装及创建项目

    linux版本安装 pip3 install scrapy 安装完成 windows版本安装 pip install wheel 下载twisted,网址:http://www.lfd.uci.edu ...

  2. Python爬虫框架--Scrapy安装以及简单实用

    scrapy框架 框架 ​ -具有很多功能且具有很强通用性的一个项目模板 环境安装: Linux: ​        pip3 install scrapy ​ ​ ​  Windows: ​     ...

  3. python爬虫的scrapy安装+pymongo的安装

    我的:python2.7版本    32位 注意scrapy只支持2.7及以上的版本. 1.安装python 2.安装pip 安装pip就不赘述了,网上很多教学 pip安装时要注意更新,如果pip版本 ...

  4. Python爬虫框架Scrapy安装使用步骤

    一.爬虫框架Scarpy简介Scrapy 是一个快速的高层次的屏幕抓取和网页爬虫框架,爬取网站,从网站页面得到结构化的数据,它有着广泛的用途,从数据挖掘到监测和自动测试,Scrapy完全用Python ...

  5. python爬虫之scrapy安装(一)

    简介: Scrapy,Python开发的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrap ...

  6. [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍

    前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...

  7. 转:Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)

    Scrapy在window上的安装教程见下面的链接:Scrapy安装教程 上述安装教程已实践,可行.(本来打算在ubuntu上安装Scrapy的,但是Ubuntu 磁盘空间太少了,还没扩展磁盘空间,所 ...

  8. Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)

    Scrapy在window上的安装教程见下面的链接:Scrapy安装教程 上述安装教程已实践,可行.(本来打算在ubuntu上安装Scrapy的,但是Ubuntu 磁盘空间太少了,还没扩展磁盘空间,所 ...

  9. Linux 安装python爬虫框架 scrapy

    Linux 安装python爬虫框架 scrapy http://scrapy.org/ Scrapy是python最好用的一个爬虫框架.要求: python2.7.x. 1. Ubuntu14.04 ...

随机推荐

  1. spring-boot-devtools 热部署

    一.简单介绍 spring-boot-devtools是一个为开发者服务的一个模块,其中最重要的功能就是修改代码后自动启动springboot服务,速度比手动停止后再启动要快,节省出来的并不是手工操作 ...

  2. texlive支持中文的简单方法

    1.确保tex文件的编码方式是UTF-8, 2.在文档开始处添加一行命令即可,即 \usepackage[UTF8]{ctex} , 如下所示: \documentclass{article} \us ...

  3. [Windows内核分析]KPCR结构体介绍 (CPU控制区 Processor Control Region)

    Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html 逆向分析操作系统内核代码至少需要具备两项技能: 段页汇编代码非常懂 ...

  4. 【从刷面试题到构建知识体系】Java底层-synchronized锁-1

    在技术论坛中,经常看到一种言论:面试造火箭,干活拧螺丝.我们平时写的大部分代码的确是CRDU,再提一个层次,也无非就是揉进去复杂一些的业务逻辑,把一堆的CRDU组合起来. 那么问题来了:我们提倡的研究 ...

  5. 在Xamarin开发中,UWP环境下无法进入断点调试standard库的问题解决方案

    环境如下 选择的代码共享方案为standard模式 再多平台依赖注入的时候,断点一直提示没有加载文档. 进入到目标平台项目Debug文件夹下,查看.发现standard库引用进来后,对应的*.pdb文 ...

  6. Python flask 构建微电影视频网站☝☝☝

    Python flask 构建微电影视频网站☝☝☝ 1.安装数据库连接依赖包 pip install flask-sqlalchemy 2.创建movie数据库 在CentOS虚拟机,进入MaridD ...

  7. Vue-CLI项目-axios模块前后端交互(类似ajax提交)

    08.31自我总结 Vue-CLI项目-axios前后端交互 一.模块的安装 npm install axios --save #--save可以不用写 二.配置main.js import axio ...

  8. drf源码save以及response

    drf源码save以及response 一.save 其中蛮重要的一段 if self.instance is not None: self.instance = self.update(self.i ...

  9. [NOIp2014] luogu P1351 联合权值

    哎我博 4 了. 题目描述 无向连通图 GGG 有 nnn 个点,n−1n−1n−1 条边.点从 111 到 nnn 依次编号,编号为 iii 的点的权值为 WiW_iWi​,每条边的长度均为 111 ...

  10. [牛客网NOIP赛前集训营-提高组(第一场)]C.保护

    链接:https://www.nowcoder.com/acm/contest/172/C来源:牛客网 题目描述 C国有n个城市,城市间通过一个树形结构形成一个连通图.城市编号为1到n,其中1号城市为 ...