scrapyd — scrapyd 1.2.0 documentation
scrapyd是乙個用於部署和執行scrapy爬蟲的程式,它允許你通過json api來部署爬蟲專案和控制爬蟲執行,scrapyd是乙個守護程序,監聽爬蟲的執行和請求,然後啟動程序來執行它們
pip install scrapyd
2.1 啟動scrapyd
在本工程下命令列下啟動scrapyd
scrapyd
注意:如果不先啟動scrapyd就會無法部署工程scrapyd的配置檔案:
/usr/local/lib/python3.9/site-packages/scrapyd/default_scrapyd.conf
配置檔案選項
[scrapyd]
# 專案eggs生成目錄
eggs_dir = eggs
# 專案日誌生成目錄,如果不想要生成日誌,可以直接設定成空
logs_dir = logs
# 爬取的items儲存的資料夾,預設為空,不儲存。
items_dir =
# 每個爬蟲保持的完成任務數
jobs_to_keep = 5
# 專案dbs生成目錄
dbs_dir = dbs
# 可啟用的最多程序數
max_proc = 0
# 每個cpu可啟用的scrapy程序數
max_proc_per_cpu = 4
# 保持的完成任務程序數
finished_to_keep = 100
# 輪訓請求佇列的時間間隔
poll_interval = 5.0
bind_address = 127.0.0.1
# 監聽的埠,預設為 6800
# 是否開啟 debug 模式
debug = off
2.2 建立專案工程下會有乙個叫scrapy.cfg的檔案,檔案的內容如下:
[settings]
default = my_spider.settings
[deploy:ms] # demo是指這個deploy的名稱,自己命名,可以多個。(後面有用到)
project = myspider # 工程的名稱
2.3 部署專案通過scrapyd-deploy部署,要求裝乙個scrapyd-client
pip install scrapyd-client
2.4 使用scrapyd-deploy
scrapyd-deploy 部署名稱 -p 專案名稱
在專案路徑下執行
scrapyd-deploy -l
scrapy-deploy demo #demo就是scrapy.cfg中的名字
curl http://localhost:6800/schedule.json -d project=專案名 -d spider=爬蟲名
# 停止爬蟲
curl http://localhost:6800/cancel.json -d project=專案名稱 -d job=jobid
# 列出專案
# 列出爬蟲
# 列出job
問題1
解決方案
建立檔案scrapyd-deploy.bat
@echo off
d:\python_env\spider_env\scripts\python d:\python_env\spider_env\scripts\scrapyd-deploy %*
問題2
解決方案
找到指定檔案 修改編碼為utf-8
with open(filename, encoding='utf-8') as fp:
self._read(fp, filename)
問題3
解決方案
因為scrapy.utils.http
被拋棄了,所以把 scrapyd-deploy檔案中 23行的內容 換成from w3lib.http import basic_auth_header
Scrapyd的安裝及使用(windows)
scrapyd的安裝及使用 windows 一 安裝scrapyd 注 首先確保以下的依賴包已經安裝完畢 這裡不說明下麵包如何安裝 python 2.6 or above twisted 8.0 or above scrapy 0.17 or above linux的用apt get安裝,其他用 p...
Scrapyd的安裝與部署
本文的目的在於介紹 scrapyd 的安裝與使用,為節省篇幅,scrapy 的安裝與 scrapy爬蟲的開發在本文不予介紹,預設已經開發完成,當然,本機的python環境變數也是配置好的。筆者所用的環境如下 系統 windows 10 python python 3.6.3 scrapy scrap...
cvs 的安裝及使用
by camry.wu 摘要 簡敘 cvs 安裝使用 cvs 是個經常使用的東西,啟動也很簡單,把步驟記錄一下,免得忘記掉.建使用者及組 su apt get install cvs mkdir usr cvsroot groupadd cvs useradd g cvs g cvs d usr c...