国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

淺析python實現scrapy定時執行爬蟲

2020-01-04 15:46:30
字體:
來源:轉載
供稿:網友

項目需要程序能夠放在超算中心定時運行,于是針對scrapy寫了一個定時爬蟲的程序main.py ,直接放在scrapy的存儲代碼的目錄中就能設定時間定時多次執行。

最簡單的方法:直接使用Timer類

import timeimport oswhile True:  os.system("scrapy crawl News")  time.sleep(86400) #每隔一天運行一次 24*60*60=86400s或者,使用標準庫的sched模塊import sched#初始化sched模塊的scheduler類#第一個參數是一個可以返回時間戳的函數,第二個參數可以在定時未到達之前阻塞。schedule = sched.scheduler ( time.time, time.sleep )#被周期性調度觸發的函數def func():  os.system("scrapy crawl News")def perform1(inc):  schedule.enter(inc,0,perform1,(inc,))  func()  # 需要周期執行的函數def mymain():  schedule.enter(0,0,perform1,(86400,))if __name__=="__main__":  mymain()  schedule.run() # 開始運行,直到計劃時間隊列變成空為止關于cmd的實現方法,本人在單次執行爬蟲程序時使用的是 cmdline.execute("scrapy crawl News".split())但可能因為cmdline是scrapy模塊中自帶的,所以定時執行時只能執行一次就退出了。

小伙伴有種方法是使用

import subprocesssubprocess.Popen("scrapy crawl News")

她的程序運行正常可以定時多次執行,而我的卻直接退出了,改為

from subprocess import Popensubprocess.Popen("scrapy crawl News")

才正常,不知道為什么會這樣,如果有大神可以解釋原因還請指點。

反正

os.system、subprocess.Popen

都是python/268408.html">pythoncmd的實現方法,可以根據需要選擇使用。

總結

以上所述是小編給大家介紹的python實現scrapy定時執行爬蟲,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贺州市| 陕西省| 漳浦县| 江陵县| 磐安县| 彩票| 韩城市| 勃利县| 武邑县| 永修县| 开江县| 壶关县| 高州市| 小金县| 阳西县| 怀集县| 龙井市| 青州市| 澳门| 吴忠市| 固安县| 富源县| 修水县| 石阡县| 莱西市| 油尖旺区| 甘洛县| 揭东县| 新兴县| 德保县| 安乡县| 阿拉善左旗| 澎湖县| 宁都县| 尤溪县| 富锦市| 郸城县| 马龙县| 十堰市| 阳朔县| 梁河县|