Python Tweepy-API会话可以保持打开多长时间
我有一个脚本,我想让它基本上无限期地运行,它所做的是监视一个API,并在满足某些条件时发送一条tweet。脚本看起来像这样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_
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的设置并撤销应用程序来删除授权