使用 tweepy 从 twitter 流 api 中排除转发

2023-11-23

使用Python时tweepy从 Twitter 的流 API 中提取推文的库是否可以排除转发?

例如,如果我只想要特定用户 ex 发布的推文:twitterStream.filter(follow = ["20264932"])但这会返回转发,我想排除它们。我怎样才能做到这一点?

先感谢您。


仅检查推文的文本以查看其是否以“RT”开头并不是真正可靠的解决方案。您需要决定什么是转发,因为它并不明确。推特 APIdocs解释推文中带有“RT”的推文不是正式转发。

有时,人们在推文开头输入 RT 来表明他们正在转发其他人的内容。这不是 Twitter 的官方命令或功能,但表示他们引用了其他用户的推文。

如果您采用“官方”定义,那么您希望过滤掉具有以下特征的推文:True他们的转发属性的值,如下所示:

if not tweet['retweeted']:
    # do something with standard tweets

如果你想更具包容性,包括“非官方”转发,你应该检查字符串中的子字符串“RT @”,而不仅仅是检查它是否以“RT”开头,因为前者更干净、更快,并且消除了更多边缘情况,推文以“RT”开头但不是转发(有大量数据,我确信这是可能的)。这是一些代码:

if not tweet['retweeted'] and 'RT @' not in tweet['text']:
    # do something with standard tweets

后一个条件采用您的集合中属于常规推文的推文子集,并与您集合中推文文本中没有“RT @”的推文子集进行交集,从而为您留下被认为是常规推文的推文。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 tweepy 从 twitter 流 api 中排除转发 的相关文章

随机推荐