【发布时间】:2012-08-10 09:03:29
【问题描述】:
我正在编写一个会不断抓取数据的 Python 脚本,但这需要相当长的时间。有没有一种安全的方法来停止长时间运行的 python 脚本?循环将运行超过 10 分钟,如果我愿意,我需要一种方法来停止它,在它已经运行之后。
如果我从 cron 作业执行它,那么我假设它会一直运行到完成,那么我该如何停止它?
另外,如果我从浏览器运行它并调用文件。我假设停止加载页面会停止它,对吗?
场景如下:
我有一个 python 脚本,它从页面收集信息并将其放入队列中。然后我想要另一个处于无限循环中的 python 脚本,它只检查队列中的新项目。假设我希望无限循环从早上 8 点开始,到晚上 8 点结束。我该如何做到这一点?
【问题讨论】:
-
a) 什么操作系统? b) 你是如何运行它的? (您将 cron 列为一个例子——这是唯一的例子吗?) c) 什么浏览器,什么 Web 服务器(例如 apache)?例如,如果你在 Mac 上从命令行运行它,你会使用 COMMAND-.,或者在 Linux 中使用 Control-C。
-
两个程序(队列)之间的信息是如何共享的?
-
a) windows b) 它将通过 php 调用或 python 调用启动 c) 我将使用 firefox 或 chrome,并且我在我自己的 windows pc 上运行它一个 wamp 服务器。我只是在“这里是场景”中添加了更多细节。该信息将与 txt 文件或 mysql 数据库共享。我正在考虑在循环结束时放置一个停止/睡眠/等待,以便在再次检查队列之前等待至少几秒钟。
-
非常糟糕的程序设计
-
耐心按下关机键即可。
标签: python loops cron infinite-loop