python: постоянная программа выполнения зависит от даты - PullRequest
0 голосов
/ 24 августа 2011

Я написал скрипт script.py, собирающий данные из Интернета с понедельника по пятницу.Скрипт обычно выполняется из другого скрипта в основной функции.Я хочу, чтобы он закрывался в пятницу и автоматически открывал понедельник, и запускался с понедельника по пятницу.

В настоящий момент я вынужден запускать его вручную каждый понедельник.Я написал некоторый код, чтобы остановить его автоматически по пятницам.В основном это выглядит так:

import sys
import time

if strftime("%a %H:%M", gmtime()) != "Fri 20:00":
    ...code...
else:
    sys.exit()

, как постоянно запускать основной сценарий и автоматически открывать другой сценарий при необходимости?Помогите мне улучшить это, пожалуйста, спасибо.

РЕДАКТИРОВАТЬ на самом деле я переформулирую вопрос:

Есть ли правильный способ запустить prermanently скриптКроме того:

while 1!=0:
    ...code here

Ответы [ 2 ]

1 голос
/ 24 августа 2011

Есть ли у вас возможность автоматически запланировать запуск программы по понедельникам с помощью планировщика задач cron или windows?

Alternatley, вы могли бы написать отдельную программу, которая работает постоянно и контролирует запуск и / или выключение script.py.

0 голосов
/ 24 августа 2011

В вашем переформулированном вопросе нет ничего плохого в использовании

while True:
  do things in a loop forever

Если это действительно то, как код должен работать.

Этого можно избежать, если вы хотите, вы можете избежатьэто путем реструктуризации вашего кода, так что он не должен запускаться в бесконечном цикле.Не существует волшебного способа, чтобы скрипт «продолжал работать в цикле вечно» без использования конструкции цикла.

Хотя мне интересно.Вам не нравится

в то время как 1! = 0:

, потому что немного глупо говорить 1! = 0?

в то время как True:

Это идеальная альтернатива.

...