【问题标题】:Is there a way to access the original tweets from reply tweets?有没有办法从回复推文中访问原始推文?
【发布时间】:2021-09-27 05:14:03
【问题描述】:

我目前正在使用 twitter api 进行一个项目,并且我有一个包含特定单词的回复推文数据集。有没有办法从这些回复推文中访问原始推文,即主要推文?

【问题讨论】:

  • 请提供有关您的数据集的更多详细信息
  • 使用过滤器:回复运算符,我从 twitter 中提取了包含特定单词的回复推文(例如单词“developer”)。我想通过从这些回复推文中获取原始推文来分析这些推文。这样的事情可能吗?
  • 好的,但是您对每条推文还有什么看法?我不确定你是否只有每条推文的文字内容
  • 如果您提供数据集中的示例会很有帮助
  • 对于每条推文,我都有诸如 id、文本内容、created_at、用户屏幕名称、用户位置、用户关注者数量等信息。

标签: twitterapi-python


【解决方案1】:

欢迎来到 StackOverflow,serenayyildiz

您可以使用tweepy library从其回复之一中找到原始推文:

auth = tweepy.OAuthHandler(key, secret)
auth.set_access_token(token, token_secret)
api = tweepy.API(auth)

with open('tweets.csv','w') as f1:
    writer = csv.writer(f1)

    for reply_id in list_of_replies:
        reply_tweet = api.get_status(id=reply_id)
        original_tweet_id = reply_tweet.in_reply_to_status_id
        original_tweet = api.get_status(original_tweet_id )
        row = original_tweet.text
        writer.writerow(row)

这里是Status对象中的属性列表,当你调用api.get_status时返回:

  • created_at :发布状态的时间。
  • id : 状态的 ID。
  • id_str : 字符串状态的ID。
  • text :状态的文本。
  • entities : 已解析的状态实体,例如标签、URL 等。
  • source :状态的来源。
  • source_url : 状态源的 URL。
  • in_reply_to_status_id : 被回复状态的 ID。
  • in_reply_to_status_id_str : 以字符串形式回复的状态 ID。
  • in_reply_to_user_id : 被回复用户的 ID。
  • in_reply_to_user_id_str :作为字符串回复的用户的 ID。
  • in_reply_to_screen_name : 被回复用户的网名
  • user : 状态发布者的 User 对象。
  • geo : 状态的地理对象。
  • 坐标:状态坐标。
  • place :状态的位置。
  • contributors :状态的贡献者。
  • is_quote_status :指示状态是否为引用状态。
  • retweet_count : 转发状态的次数。
  • favorite_count : 状态的点赞数。
  • favorited : 指示状态是否已被经过身份验证的用户收藏。
  • retweeted : 表示状态是否已被经过身份验证的用户转发。
  • possibly_sensitive :表示状态是否敏感。
  • lang :状态的语言。

【讨论】:

  • 谢谢你成功了 :) 只有最后一行会有 original_tweet.text 而不是 tweet.text
  • 那么,我是否有机会同时访问所有原始推文并将它们保存在 csv 文件中?
  • 是的,我编辑了代码以满足您的标准。如果我的解决方案有帮助,请点赞并接受答案
猜你喜欢
  • 2013-05-24
  • 2020-11-06
  • 2021-03-05
  • 2011-10-29
  • 2014-03-28
  • 1970-01-01
  • 1970-01-01
  • 2016-11-17
  • 2012-03-22
相关资源
最近更新 更多