Я пытаюсь сделать скрипт python (бесконечный цикл) работать каждый день с 9 утра до 23.00, и это снова и снова. Я сделал некоторые исследования и придумали этот код в конце:Сделать скрипт python каждый день в определенные часы
while True:
if dt.now().hour in range(9, 23):
if __name__ == "__main__":
""" Not important """
while True:
try:
""" bet_automation contains all the necessary code """
bet_automation()
except Exception as ex:
""" Catch all the error of bet_automation() and restart program """
print_error(ex)
time.sleep(5)
if not isinstance(ex, LoginTimeoutException):
try:
driver = get_driver()
filename = str(time.time())
driver.get_screenshot_as_file("errors/{}.png".format(filename))
with io.open("errors/{}.html".format(filename)) as f:
f.write(unicode(driver.page_source))
except:
pass
try:
quit_driver()
except:
pass
else:
sys.exit(0)
Благодаря этому, скрипт удается начать в 20.00 и работает правильно. Даже если я запускаю его раньше, он только начинает работать в 20.00, что отлично, но он не заканчивается на 21, что путает.
Я хорошо знаю, что это, вероятно, очень простой и немой вопрос, но, как я уже сказал, я начинающий. У меня был этот скрипт, запрограммированный «профессиональным» программистом, и я пытаюсь его отредактировать и улучшить, и я хотел бы сделать это сам, чтобы понять весь процесс.
Каждый прозрение высоко ценится,
Большое спасибо,
:)
Бесконечный цикл вложен в другой бесконечный цикл? звучит опасно – ZdaR
Используйте http://en.wikipedia.org/wiki/Cron – konart
Ваш код говорит 9:00 -> 23:00, но в вашем описании упоминается 20:00 и 21:00. Что он? Или я неправильно понял? – clesiemo3