如何使用 Tweepy 正确回复?

问题描述

我正在开发一个用于学习目的的机器人,它会为每个用葡萄牙语输入“早上好”的人回复模因答案。

但是,我似乎无法在 OP 推文中回复,只能在我的提要中使用 OP 的 @ 进行回复,这并不符合预期。代码如下:

    import tweepy
    import time
    auth = tweepy.OAuthHandler('xxxx','xxxxx')
    auth.set_access_token('xxxxxx','xxxxxx')
    
    api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)
    user = api.me()
    search = 'bom dia'
    numerotweets = 50
    for tweet in tweepy.Cursor(api.search,search).items(numerotweets):
    try:
            bomdia =  "example," "@" + tweet.user.screen_name + " example"
            status = api.get_status(tweet)
            api.update_status(status = bomdia,in_reply_status_id = status.id,auto_populate_reply_Metadata=True)
    print('bom dia com sucesso')
            tweet.favorite()
            time.sleep(120)
    except tweepy.TweepError as e:
    print(e.reason)
            time.sleep(5)
    break
    except stopiteration:
    break

我已经尝试过使用 in_reply_status_id = tweet.id,但它也没有奏效。有时我会收到错误 431;有时它找不到任何推文。

解决方法

API.update_status 及其使用的 POST statuses/update 端点的参数是 in_reply_to_status_id,而不是 in_reply_status_id