scrapy实战之scrapyrt的使用
scrapyrt为scrapy提供了一个http接口,有了它,我们不用再执行命令,而是直接请求一个http接口来启动项目,如果项目是部署在远程的,会比较方便。
1、安装: pip install scrapyrt
2、在任意一个项目中运行scrapyrt,再此我们在quotes爬虫项目中运行。默认会运行在9080端口上。
此时我们可以在浏览器中请求此项目:http://localhost:9080/crawl.json?spider_name=quotes&url=http://quotes.toscrape.com/
返回数据如下:解析此json数据即可。
scrapyrt可以有Get和Post两种请求方式
Get:目前Get请求支持如下参数
1、spider_name:Spider名称,字符串类型,必传参数,如果传递的spider不存在,则返回404错误。
2、url:爬取链接,字符串类型,如果起始链接没有定义就必须传递这个参数,如果传递了该参数,Scrapy会直接使用此URL生成Request,而直接忽略start_requests()方法和starts_urls属性的定义。
3、callback:回调函数名称,字符串类型,可选参数,如果传递了就会使用此回调函数处理,否则使用Spider默认的回调函数
4、max_requests:最大请求数量,数值类型,可选参数,定义了scrapy执行请求的Request的最大次数限制,如果定义为5,则表示最多执行5此Request请求,其余的会被忽略。
5、start_requests:代表是否要执行start_requests方法,布尔类型,可选参数。scrapy项目中,如果定义了start_requests()方法,默认会被调用;但是在scrapyrt中,此方法默认不会被调用,如果要调用,需要传递参数为true。
Post:
也可以通过Post请求来请求scrapyrt,但是此处的Request Body必须是一个合法的Json配置,在json中可以配置更多的参数,更加灵活。
目前Json配置支持以下参数
1、spider_name:Spider名称,字符串类型,必传参数,如果传递的spider不存在,则返回404错误。
2、max_requests:最大请求数量,数值类型,可选参数,定义了scrapy执行请求的Request的最大次数限制,如果定义为5,则表示最多执行5此Request请求,其余的会被忽略。
3、request:Request配置,Json对象,必传参数,通过该参数可以定义Request的各个参数,必须指定url字段来执行爬取链接,其他字段可选。
scrapy实战之scrapyrt的使用的更多相关文章
- 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息
简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 系统环境:Fedora22(昨天已安装scrapy环境) 爬取的开始URL:ht ...
- Python分布式爬虫开发搜索引擎 Scrapy实战视频教程
点击了解更多Python课程>>> Python分布式爬虫开发搜索引擎 Scrapy实战视频教程 课程目录 |--第01集 教程推介 98.23MB |--第02集 windows下 ...
- Scrapy实战篇(六)之Scrapy配合Selenium爬取京东信息(上)
在之前的一篇实战之中,我们已经爬取过京东商城的文胸数据,但是前面的那一篇其实是有一个缺陷的,不知道你看出来没有,下面就来详细的说明和解决这个缺陷. 我们在京东搜索页面输入关键字进行搜索的时候,页面的返 ...
- Scrapy实战-新浪网分类资讯爬虫
项目要求: 爬取新浪网导航页所有下所有大类.小类.小类里的子链接,以及子链接页面的新闻内容. 什么是Scrapy框架: Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应 ...
- Scrapy实战篇(八)之爬取教育部高校名单抓取和分析
本节我们以网址https://daxue.eol.cn/mingdan.shtml为初始链接,爬取教育部公布的正规高校名单. 思路: 1.首先以上面的地址开始链接,抓取到下面省份对应的链接. 2.在解 ...
- Scrapy实战篇(七)之爬取爱基金网站基金业绩数据
本篇我们以scrapy+selelum的方式来爬取爱基金网站(http://fund.10jqka.com.cn/datacenter/jz/)的基金业绩数据. 思路:我们以http://fund.1 ...
- Scrapy实战篇(六)之爬取360图片数据和图片
本篇文章我们以360图片为例,介绍scrapy框架的使用以及图片数据的下载. 目标网站:http://images.so.com/z?ch=photography 思路:分析目标网站为ajax加载方式 ...
- Scrapy实战篇(五)之爬取历史天气数据
本篇文章我们以抓取历史天气数据为例,简单说明数据抓取的两种方式: 1.一般简单或者较小量的数据需求,我们以requests(selenum)+beautiful的方式抓取数据 2.当我们需要的数据量较 ...
- Scrapy实战篇(四)爬取京东商城文胸信息
创建scrapy项目 scrapy startproject jingdong 填充 item.py文件 在这里定义想要存储的字段信息 import scrapy class JingdongItem ...
随机推荐
- 2018-计算机系机试(第二批)-E-绝对值排序
单点时限: 2.0 sec 内存限制: 256 MB 输入 n 个整数,按照绝对值从大到小排序.绝对值相等的整数按照整数值从小到大排序. 例如:3 个整数 -2,2 和 -6 的排序结果为 -6, - ...
- react react-native 日期插件 m-date-picker / rmc-date-picker的使用
m-date-picker 基于 React,提供了 iOS 风格的日期选择方式,与原生 Datepicker 非常相似. 主页: https://github.com/react-component ...
- 《Java编程思想》读书笔记-第一个Java程序
积少成多,欢迎大家关注我的微信公众号,共同探讨Java相关技术 今天的重点是:编写源代码.编译.运行.查看成果.除此之外,还需要搭建起与前面学习的知识的联系. 写本文时依据的系统环境是Windows1 ...
- 什么是BFC
对css有了解的朋友肯定都知道盒式模型这个概念,对一个元素设置css,首先需要知道这个元素是block还是inline类型.而BFC就是用来格式化块级盒子,同样管理inline类型的盒子还有IFC,以 ...
- mysql count 主键之坑
https://www.2cto.com/database/201508/433975.html
- day11.2lambda函数表达式 及其返回值注意事项
lambda表达式 用于表示简单的函数 func1=lambda 参数:一句话函数体(默认返回函数体内执行的内容) 1.1结构 func=lambda a1,a2 : a1+100 val=func( ...
- Lock详解
在JDK1.5后,并发包里新增了Lock接口以及其实现类来实现锁功能,它提供了与synchronized关键字类似的锁功能,但它需要手动开启.关闭锁.虽然看起来没有synchronized方便,但它可 ...
- centos安装实用总结
1.常用软件安装: yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop ...
- QT+VS2013 * 获取网络时间
使用qt函数获取网络时间 现在Qt Project Setting中的Qt Modules勾选NetWork,再导入头文件我也忘了叫什么了 QStringList net_time; QTcpSock ...
- robotframework之用cmd去执行用例
1.电脑cmd进入 2.在cmd中输入相应的执行命令即可以正常执行 3.执行完成,会显示当前用例执行情况,以及output/log/report的默认保存路径 接下来详细说一下执行不同用例的具体指令, ...