zoukankan      html  css  js  c++  java
  • 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字段来执行爬取链接,其他字段可选。

     转载:https://www.cnblogs.com/lxbmaomao/

  • 相关阅读:
    带花树
    pxe+kickstart部署多个版本的Linux操作系统(上)---原理篇
    GO学习——安装编译(1)
    git学习——Github关联(2)
    你可能不知道的printf
    Linux中的文件查找技巧
    C语言入坑指南-被遗忘的初始化
    Linux常用命令-解压缩篇
    Linux常用命令-文本查看篇
    C语言的main函数到底该怎么写
  • 原文地址:https://www.cnblogs.com/Im-Victor/p/15473991.html
Copyright © 2011-2022 走看看