某些爬蟲程序需要運行很長時間才能將數據爬完,爬取太快呢又會被網站給封禁。你又不想一直開着電腦連續開幾天,太麻煩。。。
其實有個好方法,你可以把爬蟲放在阿里雲服務器運行,這樣你就不需要管了,但是你如果在Ubuntu或阿里雲上直接:
scrapy crawl spider_name 或python run.py的話
當你關閉鏈接阿里雲的xshell時,程序會直接停掉不會繼續運行。
今天給大家分享一個在阿里雲服務器後臺運行你的scrapy爬蟲代碼的命令,可以使你的爬蟲在服務器後臺一直運行,關閉連接也沒事。
nohup python -u run.py > spider_house.log 2>&1 &
run.py爲你自己寫的scrapy爬蟲的運行文件:
from scrapy.cmdline import execute
execute(['scrapy','crawl','house'])
執行完命令後會返回給你一個進程ID,此時你的爬蟲就已經在該進程中運行了,你可以用下邊命令查看後臺該進程:
ps -aux #a:顯示所有程序 u:以用戶爲主的格式來顯示 x:顯示所有程序,不以終端機來區分
只要找到返回給你的進程pid,說明你的爬蟲正在運行。
如下是我的運行進程: