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的使用的更多相关文章

  1. 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息

    简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 系统环境:Fedora22(昨天已安装scrapy环境) 爬取的开始URL:ht ...

  2. Python分布式爬虫开发搜索引擎 Scrapy实战视频教程

    点击了解更多Python课程>>> Python分布式爬虫开发搜索引擎 Scrapy实战视频教程 课程目录 |--第01集 教程推介 98.23MB |--第02集 windows下 ...

  3. Scrapy实战篇(六)之Scrapy配合Selenium爬取京东信息(上)

    在之前的一篇实战之中,我们已经爬取过京东商城的文胸数据,但是前面的那一篇其实是有一个缺陷的,不知道你看出来没有,下面就来详细的说明和解决这个缺陷. 我们在京东搜索页面输入关键字进行搜索的时候,页面的返 ...

  4. Scrapy实战-新浪网分类资讯爬虫

    项目要求: 爬取新浪网导航页所有下所有大类.小类.小类里的子链接,以及子链接页面的新闻内容. 什么是Scrapy框架: Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应 ...

  5. Scrapy实战篇(八)之爬取教育部高校名单抓取和分析

    本节我们以网址https://daxue.eol.cn/mingdan.shtml为初始链接,爬取教育部公布的正规高校名单. 思路: 1.首先以上面的地址开始链接,抓取到下面省份对应的链接. 2.在解 ...

  6. Scrapy实战篇(七)之爬取爱基金网站基金业绩数据

    本篇我们以scrapy+selelum的方式来爬取爱基金网站(http://fund.10jqka.com.cn/datacenter/jz/)的基金业绩数据. 思路:我们以http://fund.1 ...

  7. Scrapy实战篇(六)之爬取360图片数据和图片

    本篇文章我们以360图片为例,介绍scrapy框架的使用以及图片数据的下载. 目标网站:http://images.so.com/z?ch=photography 思路:分析目标网站为ajax加载方式 ...

  8. Scrapy实战篇(五)之爬取历史天气数据

    本篇文章我们以抓取历史天气数据为例,简单说明数据抓取的两种方式: 1.一般简单或者较小量的数据需求,我们以requests(selenum)+beautiful的方式抓取数据 2.当我们需要的数据量较 ...

  9. Scrapy实战篇(四)爬取京东商城文胸信息

    创建scrapy项目 scrapy startproject jingdong 填充 item.py文件 在这里定义想要存储的字段信息 import scrapy class JingdongItem ...

随机推荐

  1. java程序初体验

    示例代码 class Demo { public static void main(String[] args) { System.out.print("hello world") ...

  2. javascript最全最好的判断数组的方法

    var arr = [1,2,3,1]; var arr2 = [{ abac : 1, abc : 2 }]; function isArrayFn(value){ if (typeof Array ...

  3. java面试题03

    1.一个”.java”源文件中是否可以包含多个类(不是内部类)?有什么限制?一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?这个是可以的,一个“.java” ...

  4. vue2上传图片到OSS

    第一步:安装阿里云OSS <!-- 引入在线资源 --> <script src="http://gosspublic.alicdn.com/aliyun-oss-sdk- ...

  5. 关于mysql中存储json数据的读取问题

    在mysql中存储json数据,字段类型用text,java实体中用String接受. 返回前端时(我这里返回前端的是一个map),为了保证读取出的数据排序错乱问题,定义Map时要用LinkedHas ...

  6. SQLServer 账户当前被锁定

    嗯,被攻击了一波,烦躁很 ‘帐户当前被锁定,所以用户 ‘sa’ 登录失败.系统管理员无法将该帐户解锁’解决方法 如果短时间内不停连接,就会被SQL SERVER误认为是这是攻击,会将此账号锁定. 要用 ...

  7. 引擎设计跟踪(九.14.3.3) Deferred shading的一些小细节

    1.ambient light 之前的shader里面, 方向光会加上ambient 的计算. 但是如果没有方向光, 就没有ambient. 这是把全局方向光改为点光源之后发现的, 因为透明物体的fo ...

  8. 【转】rem自适应布局

    rem自适应原理 rem是根据html的font-size大小来变化,正是基于这个出发,我们可以在每一个设备下根据设备的宽度设置对应的html字号,从而实现了自适应布局.更多介绍请看这篇文章:rem是 ...

  9. 去重和分类后缀asp、php等路径 用python3写的

    我们在做渗透的时候肯定会用上扫描器的,本人一般会用御剑,当然你也会喜欢别的工具. 很多时候,能否渗透成功其实还挺依赖与字典的,如果把后台给扫出来了,恰好还弱口令,那么岂不是美滋滋. 因此,有一个好的字 ...

  10. Mvc Session 设置以后再构造函数中取值时为null问题

    在登录界面写了一个session在 别的页面的构造函数中获取始终未null  后来改成 System.Web.HttpContext.Current.Session["User"] ...