gpt4 book ai didi

Python:检查Twitter用户A是否关注用户B

转载 作者:太空宇宙 更新时间:2023-11-03 16:05:53 25 4
gpt4 key购买 nike

我一直在尝试使用 Tweepy 或 Twython 与 Twitter API 来搜索特定主题标签,提取使用该主题发推文的用户的用户名,然后查看其中有多少用户相互关注。我的最终目标是可视化与 NetworkX 的连接。

到目前为止,我已经能够搜索主题标签并获取使用它发推文的用户列表。但是,我不知道如何查看该列表上的谁正在关注谁。我终于开始进行友谊查找,但后来意识到该参数仅搜索经过身份验证的用户(我)的 friend 。

这是最新版本的代码:

from twython import Twython
import tweepy

# fill these in from Twitter API Dev
CONSUMER_KEY = ''
CONSUMER_SECRET = ''
ACCESS_KEY = ''
ACCESS_SECRET = ''

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
api = tweepy.API(auth, wait_on_rate_limit=True)

twitter = Twython(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_KEY, ACCESS_SECRET)

# Search for hashtag, limit number of users
try:
search_results = twitter.search(q='energy', count=5)
except TwythonError as e:
print e

test5 = []
for tweet in search_results['statuses']:
if tweet['user']['screen_name'] not in test5:
test5.append((tweet['user']['screen_name']).encode('utf-8'))
print test5

# Lookup friendships
relationships = api.lookup_friendships(screen_names=test5[0:5])
for relationship in relationships:
if relationship.is_following:
print("User is following", relationship.screen_name)

谢谢!

最佳答案

使用 Tweepy,您可以使用 API.exists_friendship 检查 user_a 是否跟随 user_b方法。代码看起来像这样:

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
api = tweepy.API(auth, wait_on_rate_limit=True)
is_following = api.exists_friendship(user_a, user_b)

您可以通过 ID 或屏幕名称指定用户。

或者,您可以使用 API.followers_ids 获取整个关注者列表。方法:

auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
api = tweepy.API(auth, wait_on_rate_limit=True)
user_b_followers = api.followers_ids(user_b)
is_following = user_a in user_b_followers

这种方法对于大型用户网络来说更有意义。

请记住,无论采用哪种方法,您都只能看到经过身份验证的用户可见的好友关系。这是 Twitter 出于隐私原因而实现的限制。

关于Python:检查Twitter用户A是否关注用户B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39802469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com