0

所以我写了一个 twitter 机器人,它从某个 subreddit 中提取最高提交并将其发布到 twitter。

它作为 cron 作业运行,如果顶部帖子与上次运行时相同,则 twitter api 会抛出该帖子重复的错误,我希望捕获此错误,然后使用递增的键重新运行函数,以便尝试下一篇文章继承人我的代码(api凭据省略)

def pull_reddit_post(key):
    r = reddit.Reddit(user_agent='ghettoTwit')
    submissions = r.get_subreddit('ghettojerk').get_hot(limit=10)
    post = [str(x) for x in submissions]
    post = post[key]
    post = post.lstrip('0123456789: ')
    return post

def tweet_reddit_post(key):
    global api 
    post = pull_reddit_post(key)
    api.PostUpdates(pull_reddit_post(key))

try:
    key = 0
    tweet_reddit_post(key)
except:
    key = key + 1
    continue
else:
    break
4

1 回答 1

1

只需编辑 try...except 并将其放入循环中

key = 0

while True:
    try:
        tweet_reddit_post(key)
        break
    except:
        key += 1
于 2012-08-20T05:25:05.867 回答