长时间运行python会自动停止_每分钟运行而不会停止的Python脚本

我有一个Python脚本,每1分钟向我的API发送一个post请求:

while True:

data = requests.post("URL_HERE", json={

"api_key":"XXXX",

"concat": 1,

"messages": "HI"

})

time.sleep(60)

一切正常,但每2个小时(或多或少)有2个同一分钟的记录.例:

2017-03-22 11:34:46.977255

2017-03-22 11:37:47.231694

2017-03-22 11:37:47.231694

2017-03-22 11:39:48.849003

2017-03-22 11:40:48.907895

...

2017-03-23 13:59:59.150108

2017-03-23 14:00:00.120431

2017-03-23 14:00:00.942033

我想这是因为“while”中的代码需要几毫秒才能执行,多亏了这一点,每分钟2-3小时一次将有两条记录.

任何人都知道如何解决这个问题?我不能用cronjobs.

也许是异步任务?

如果我希望这个程序永远执行,那么使用“while”就可以了,或者我应该创建一个类似的守护进程?

解决方法:

而不是等待60秒,您可以等待当前分钟的剩余秒数:

time.sleep(60 - datetime.datetime.now().second)

如果你的工作结束了datetime.datetime.now().秒将是1或2,你将等待59或58秒.

标签:python,django,daemon

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值