Pyspider的基本使用 -- 入門


簡介

  • 一個國人編寫的強大的網絡爬蟲系統並帶有強大的WebUI
  • 采用Python語言編寫,分布式架構,支持多種數據庫后端,強大的WebUI支持腳本編輯器,任務監視器,項目管理器以及結果查看器
  • 官方文檔:http://docs.pyspider.org/en/latest/

安裝

啟動服務

  • 命令窗口輸入pyspider


打開Web界面

  • 瀏覽器輸入localhost:5000


創建項目



刪除項目

  • 刪除某個:設置 group 為 delete ,status 為 stop ,24小時之后自動刪除
  • 刪除全部:在啟動服務的路徑下,找到它自己生成的data目錄,直接刪除目錄里的所有文件



禁止證書驗證

  • 加上參數 validate_cert = False


使用方法

  • on_start(self)
    • 入口方法,run的時候,默認會調用
  • crawl()
    • 生成一個新的爬取請求,類似於scrapy.Request,接受的參數是ur1和callback
  • @every(minutes=2, seconds=30)
    • 告訴scheduler兩分30秒執行一次
  • @config(age=10 * 24 * 60 * 60)
    • 告訴調度器(單位:秒)、這個請求過期時間是10天、10天之內不會再次請求
  • @config(priority=2)
    • 優先級、數字越大越先執行
  • age寫在函數里面跟寫在裝飾器上的區別
    • 寫在函數里面的后執行,下圖實際過期時間為5秒,若函數里沒有age,則為裝飾器里定義的20秒


執行任務

  • 完成腳本編寫,調試無誤后,先save腳本,然后返回到控制台首頁
  • 直接點擊項目狀態status那欄,把狀態由TODO改成DEBUG或RUNNING
  • 最后點擊項目最右邊的Run按鈕啟動項目

對接phantomjs

  • phantomjs.exe放在Python環境根目錄下,或者將所在目錄添加到系統的環境變量
  • 添加成功,啟動服務時,會顯示如下信息


沒使用js渲染



使用js渲染

  • 添加參數 fetch_type = 'js'


其它

  • rate/burst
    • rate:一秒鍾執行的請求個數
    • burst:並發的數量
    • 例如:2/5、每秒兩個請求,並發數量為5,即每秒10個請求
  • 設置渲染的web頁面的高度
    • 在源代碼里修改css樣式即可(#tab-web iframe)
    • css文件路徑:python安裝目錄下 Lib\site-packages\pyspider\webui\static 里的 debug.min.css





免責聲明!

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



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