簡體   English   中英

使用線程或crontab重新啟動Python

[英]Restart Python with threading or crontab

我編寫了一個對新聞文章進行爬網和聚集的功能。 我希望此功能每10分鍾重新啟動一次,以獲取最新文章。 我在線程模塊的幫助下編寫了一個Python腳本:

import threading
def run():
    do_it()
    if not END:
        threading.Timer(600.0, run).start()
END = False
threading.Timer(600.0, do_it).start()

它與Python IDLE一起正常工作。 現在,我在不同的論壇中看到為此目的提到了“ crontab”。 由於我打算將此應用程序托管在Web上,並且由於我沒有Web開發/托管的經驗,因此您對我有何建議:繼續使用先前的代碼或嘗試使用“ crontab”功能來實現? 我正在使用Django框架。

在這種情況下,使用Django並不是真的有效。 如果要使用cron腳本,則將希望它獨立於Web服務器運行(您不希望Web Server在完成腳本后結束)。 另外,您可以通過此方法啟動對已運行的Django實例的GET或POST請求。

首先在基於unix的os或mac中的提示符下鍵入crontab -e (因為您提到了crontab,所以我假設您不使用Windows)

這將允許您為登錄用戶編輯文件。 這是您要鍵入以獲取do_it.py文件每10分鍾運行一次的行。

*/10 * * * * do_it.py

有關更多信息,請在提示符下鍵入man 5 crontab 您可能要進行的其他修改是在命令前加上sudo字樣,從而可以更改root的crontab。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM