使用 Twython 或 Tweepy 检查推文是否是回复?

Using Twython or Tweepy to check if a Tweet is a reply?

有没有办法根据给定的推文 ID 来检查推文是否是回复而不是原始推文?如果是这样,有没有办法获取原始推文回复的推文的 ID?

查看 Twitter Documentation 您会看到推文对象具有

in_reply_to_status_id

Nullable. If the represented Tweet is a reply, this field will contain the integer representation of the original Tweet’s ID.

Example: "in_reply_to_status_id":114749583439036416

使用 tweepy 你可以做这样的事情:

user_tweets = constants.api.user_timeline(user_id=user_id, count=100)

    for tweet in user_tweets:
        if tweet.in_reply_to_status_id is not None:
            # Tweet is a reply
            is_reply = True
        else:
            # Tweet is not a reply
            is_reply = False

如果您正在寻找特定的推文并且您有 ID,那么您想要使用 get_status,如下所示:

tweet = constants.api.get_status(tweet_id)

if tweet.in_reply_to_status_id is not None:
    # Tweet is a reply
    is_reply = True
else:
    # Tweet is not a reply
    is_reply = False

其中 api 是:

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, wait_on_rate_limit=True)