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字段來執行爬取鏈接,其他字段可選。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM