我已经用php创建了一个脚本(在altervista上,所以它是一个在线代码),但我想每55分钟运行一次。我该如何实现? 我在互联网上搜索过,但我没有找到东西。 这很重要,拜托。
只感谢
免费解决方案,我只找到了一项服务,但它不是免费的...... 对不起我的英语,但我是法国人!
要实现这一目标,您将需要一台"专用"机器 您可以使用您的机器,但它需要一直打开(无睡眠、休眠等),该过程需要始终运行,这是一个专用服务器,如亚马逊、Azure、谷歌云等将是最好的解决方案
如果您使用的是 Linux 操作系统,则可以利用系统 cronjob 并定期运行脚本(每 n 秒/分钟...或在特定日期) 另一种选择是在无限循环中运行脚本并使其每 N 秒左右进入睡眠状态,这在 Linux 和其他不支持定期工作的操作系统(如 Windows)上都有效
Python 中使用请求模块的简单脚本可能是这样的
import requests
from time import sleep
while True:
try:
response = requests.get("http://mypage.altervista.org/checkloop.php")
print(response.text)
except Exception as e:
print(e)
sleep(55) #sleep 55 seconds
但这可以在任何语言中轻松实现......
要在您可以使用的任何实例上运行此脚本
python path_to_script.py >> path_to_log_file.log 2>&1 &
一些解释
python
是运行py
文件的python cmd>>
将脚本的输出追加到文件(日志文件)2>&1
将stderr
附加到stdout
这意味着所有错误也将附加到日志文件中&
后台运行进程,因此即使用户触发了该进程,它也会运行,这将从计算机注销
您可以使用 Linux 的cron job
使用更健壮的方法 并使用 cmdcrontab -e
编辑 crontab 文件并设置以下任务
*/5 * * * * python path_to_script.py >> path_to_outputfile.log 2>&1
这将每五分钟运行一次脚本(并将 stdout 和 stderr 附加到输出日志文件)
请注意,在这种情况下,脚本本身不需要while loop
,但只运行一次,系统(cron job
)将处理频繁的运行
关于 Linux 的 cron 作业的有用信息可以在这里找到