Python Bottle网站自动化任务

时间:2016-01-05 21:36:11

标签: python-2.7 bottle

我有一个python应用程序,可以提取数据并将其发布到API中。它从过去的15分钟中提取数据,需要每15分钟运行一次。

我最终使用了瓶子框架并在页面背景中运行我的代码并每隔15分钟刷新一次(我假设这不是最好的方法)。

@route('/')
def index():

    <run code>

    return '<meta http-equiv="refresh" content="900" />'

如何自动完成此任务,同时以用户友好的方式关闭此功能并不依赖于打开浏览器?

1 个答案:

答案 0 :(得分:0)

如果我想做的就是每15分钟提取数据并将其发布到API,我就不会使用Web框架。我会写一个带有无限while循环的脚本并使用sleep()。当然,如果您愿意,可以将此脚本/函数绑定到瓶子URL。

编辑(错过了OP的一些要求):如果希望用户能够选择日期,请创建一个用户可以提交日期的表单。然后你的瓶子后端会产生一个新的进程(python脚本),它将提交的日期作为输入。此过程将持续运行您的代码,直到您的用户点击“结束”按钮,然后您的瓶子后端将终止该过程。有关产生/删除过程的更多信息,请参阅subprocess