python-3.x - 我如何获得一个账户的推文列表?
问题描述
我还没有在任何其他问题上找到这个确切的用例。
我想获得推文列表 TO:一个帐户。这里的示例是 @Azure。如何过滤掉转发推文等?
目前,我收到的推文列表并非发给 @Azure 的所有消息。还有一些是转发。谢谢 :)
# Importing TWEEPY Library
import tweepy
# Variables that contains the user credentials to access Twitter API
ACCESS_KEY = '*****'
ACCESS_SECRET = '*****'
CONSUMER_KEY = '*****'
CONSUMER_SECRET = '*****'
auth = tweepy.auth.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
api = tweepy.API(auth)
search_results = api.search(q="@Azure", count=100)
for i in search_results:
# Do Whatever You need to print here
print(i.text.encode('utf-8'))
解决方案
我认为 OP 希望排除最终出现在推文列表中但实际上是转推的推文。可以通过查看属性“retweeted_status”来过滤进入此列表的转推推文。如果这是可用的并且有它自己的状态属性,那么它肯定是一个 RT。
我可以在 PHP 中检查这一点,如下所示:
//Whatever code/library gets you a list of statuses, I use Abraham twitter oauth library
$params = [
'q' => '@azure',
'count'=>100,
'exclude_replies' => 1 //exclude replies if you want
];
$statuses = $connection->get('search/tweets', $params);
foreach($statuses->statuses as $status){
if($status->retweeted_status && $status->retweeted_status->text != ''){
echo 'retweeted status';
else
echo 'not a retweeted status';
}
推荐阅读
- hyperledger-fabric - Hyper Ledger Fabric - 如何获取网络的所有组织(而不是对等方)的名称?
- elasticsearch - elasticsearch must_not 返回错误值
- javascript - 获取Angular中两个数字之间的最大公约数的函数
- python-3.x - Python3 - 创建逗号分隔表而不从两个列表创建 csv 文件
- sql-server - 从后续行中减去值
- android - 在 JUnit 中使用 Room 测试多个功能
- conv-neural-network - 当我们多次训练它们时,我们应该如何比较两个 CNN 的训练时间?
- authorization - Visual Studio 2019 中的授权问题
- functional-programming - coq中匹配参数的结构属性证明
- c# - 如何将 ASP.NET 和 Web 开发包添加到现有的 Visual Studio