1. 程式人生 > >spider----scrapy框架

spider----scrapy框架

scrapy初認識
    scrapy是什麼?是一個非常強大的python爬蟲框架,底層語言使用python實現。既然是框架,肯定已經實現了很多其他的功能,使用者只需要將自己的精力放到自己的業務邏輯中即可。多程序、多執行緒、佇列、去重
    安裝:pip install scrapy
    scrapy的工作原理
        引擎(engine)、爬蟲(spiders)、排程器(scheduler)、下載器(downloader)、管道(pipeline)

scrapy圖解

    這裡用到生成器的使用,不懂得可以先去看看

(1)建立工程
        scrapy startproject xxx

        生成爬蟲檔案
         cd firstbloodpro
         scrapy genspider 爬蟲名字 網站域名

認識response物件
		執行scrapy
		cd firstblood/firstblood/spiders
		scrapy crawl 爬蟲名字
		response.text    字串格式內容
		response.body    位元組格式內容
		response.url     對應請求url
		response.headers 響應頭
		response.status  狀態碼

匯出為指定格式檔案

scrapy crawl qiubai -o qiubai.json
scrapy crawl qiubai -o qiubai.xml
scrapy crawl qiubai -o qiubai.csv

scrapy shell
    是什麼?scrapy的一個除錯工具,用來除錯你的css、xpath、或者連結提取器,在scrapy shell中是正確的,到程式碼中肯定沒問題
    依賴 ipython  是一個更加智慧的python互動環境
        pip install ipython
    一般情況下,在任何終端頁碼直接輸入 scrapy shell url 就可以直接進入除錯頁面,如果進不去,新建一個工程,做一些簡單的配置,然後再工程終端下再執行  scrapy shell <url>

在配置檔案setting中
    LOG_LEVEL = 'ERROR'
    和你的print沒有,只要你print就會打印出來
    LOG_FILE = 'log.txt'

傳送post請求
    如何傳送
    啟動就傳送
        重寫一個方法  start_requests(self)