我写了一个爬取和聚类新闻文章的函数。我希望这个功能每 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 脚本,那么你会希望它独立于你的网络服务器运行(你不希望你的网络服务器在你完成脚本后结束)。或者,您可以通过此方法启动对已运行的 Django 实例的 GET 或 POST 请求。
首先在基于 unix 的操作系统或 mac 中的提示符下键入 crontab -e。 (既然你提到了 crontab,我假设你不使用 Windows)
这将允许您为您登录的用户编辑文件。这是您要输入的行,以获取每十分钟运行一次的 do_it.py 文件。
*/10 * * * * do_it.py
要获得更多信息,请在提示符下键入 man 5 crontab。您可以进行的其他修改是在命令前添加 sudo 前缀,这将允许您更改 root 的 crontab。
