我有一个电报机器人,它必须在某个时间给我发送时刻表。
我正在使用请求与Telegram API一起工作,因为我住在俄罗斯(我们已经阻止了Telegram),我需要使用代理。我使用的代理速度很慢,但几秒钟对我来说是可以的。此外,我还使用datetime库来获取当前时间,并检查它是否等于计划时间
这里有一段代码:
while True:
updates = get_updates(last_id)
if len(updates["result"]) > 0:
last_id = get_last_id(updates) + 1
if (day == 0) and (hour == 8) and (minute == 0) and (sec == 0): # for Monday
print('sending...')
send_all(stuff.monday)
print("sent")
elif (day == 1) and (hour == 8) and (minute == 0) and (sec == 0): # for Tuesday
print('sending...')
send_all(stuff.tuesday)
print("sent")
elif day == 2 and (hour == 8) and (minute == 0) and (sec == 0): # for Wednesday
if (is_even % 2 == 0):
print('sending...')
send_all(stuff.wednesday_even)
print("sent")
else:
print('sending...')
send_all(stuff.wednesday_odd)
print("sent")
但它并不起作用。我不明白为什么。也许还有另一种方法可以查看时间.这很奇怪,因为作者in this link使用了相同的检查方法,而且似乎是有效的。
致以问候。
发布于 2018-09-10 01:13:24
如果你遇到这样的情况,就使用schedule library吧。
它看起来是这样的:
import schedule
schedule.every().any_day_of_the_week.at(MM:SS).do(your_routine)
https://stackoverflow.com/questions/52246036
复制相似问题