Python Tweepy-API会话可以保持打开多长时间

Python Tweepy-API会话可以保持打开多长时间,python,python-2.7,twitter,tweepy,Python,Python 2.7,Twitter,Tweepy,我有一个脚本,我想让它基本上无限期地运行,它所做的是监视一个API,并在满足某些条件时发送一条tweet。脚本看起来像这样 while True: #API CONDITION CHECKS HERE if api_condition_check: auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token, access_

我有一个脚本,我想让它基本上无限期地运行,它所做的是监视一个API,并在满足某些条件时发送一条tweet。脚本看起来像这样

while True:
    #API CONDITION CHECKS HERE
    if api_condition_check:
        auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
        auth.set_access_token(access_token, access_token_secret)
        api = tweepy.API(auth)
        tweet = "This is the tweet."
        if api.update_status(tweet):
            print "Tweet Succeeded"
    sleep(60)
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)

while True:
    #API CONDITION CHECKS HERE
    if api_condition_check:
        tweet = "This is the tweet."
        if api.update_status(tweet):
            print "Tweet Succeeded"
    sleep(60)
脚本在运行时设置一个套接字,并有一个cron作业来检查锁并重新启动脚本以处理崩溃、服务器重新启动等

我不确定的是,我是否可以将
api
创建元素放在永久运行的
while
循环之外,而不让api对象超时或发生其他事情。所以基本上代码是这样的

while True:
    #API CONDITION CHECKS HERE
    if api_condition_check:
        auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
        auth.set_access_token(access_token, access_token_secret)
        api = tweepy.API(auth)
        tweet = "This is the tweet."
        if api.update_status(tweet):
            print "Tweet Succeeded"
    sleep(60)
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)

while True:
    #API CONDITION CHECKS HERE
    if api_condition_check:
        tweet = "This is the tweet."
        if api.update_status(tweet):
            print "Tweet Succeeded"
    sleep(60)
第二种方法意味着代码不必每次都重新创建api对象,但是,如果没有错误或服务器问题,tweet之间可能需要数小时,并且代码可能一次运行数周。因此,如果只在脚本启动时创建api对象,api对象是否会超时

如果api对象仅在脚本启动时创建,它会超时吗

根据我的经验,没有。Tweepy所做的只是拿走你的钥匙和代币,然后用它来签署你的任何请求

唯一的问题是,如果你(或你的用户)通过转到Twitter的设置并撤销应用程序来删除授权