需要程序在一定时间后继续重启

时间:2016-08-04 08:38:09

标签: python loops time

我需要这个程序在15分钟后重新启动并重复其过程。我需要它在一个计时器上这样的例子它动态启动15分钟而没有任何用户输入它只会重置并重新启动并重新启动Python shell。

from twython import Twython, TwythonError
import time
import random
from auth import (
    consumer_key,
    consumer_secret,
    access_token,
    access_token_secret
)

twitter = Twython(
    consumer_key,
    consumer_secret,
    access_token,
    access_token_secret
)
start_time = time.time()
search_results = twitter.search(q="lol", count=100)
try:
    for tweet in search_results["statuses"]:
        try:
            st= tweet["entities"]["user_mentions"]
            if st != []:
                screen_name = st[0]["screen_name"]
                twitter.create_friendship(screen_name = st[0]["screen_name"])
                twitter.retweet(id = tweet["id_str"])

                for name in bot_detectors:
                    if name == screen_name:
                        try:
                            twitter.destroy_friendship(screen_name = st[0]["screen_name"])
                            twitter.destroy_status(id = tweet["id_str"])
                            twitter.create_block(screen_name=name)

                        except TwythonError as e:
                            print (e)

1 个答案:

答案 0 :(得分:0)

除非您有非常具体的要求,否则最好将脚本重新启动的逻辑放在脚本本身之外:

  • 脚本编写和测试更简单(一个功能更少)
  • 如果(由于任何原因包括程序错误)脚本崩溃,它将在下次启动时自动重启
  • 如果(由于任何原因包括程序错误)脚本在长时间运行中使用越来越多的资源,它将在每个停止时释放,并在每次新运行时重新开始
  • separation of concern通常被视为最佳做法之一

在类Unix系统上,您可以在Windows上找到cron和crontab,任务调度程序,因此它已经开箱即用而没有任何开发。