使用 Tweepy/Python 在 Twitter 上检查 A 是否关注 B



我有一个包含几千个推特ID的列表,我想检查谁在这个网络中关注谁。

我使用 Tweepy 通过以下方式获取帐户:

ids = {}
for i in list_of_accounts:
    for page in tweepy.Cursor(api.followers_ids, screen_name=i).pages():
            ids[i]=page
            time.sleep(60)

字典 id 中的值构成了我想分析的网络。如果我尝试获取每个ID的完整关注者列表(与网络中的用户列表进行比较),我会遇到两个问题。

首先,我可能无权查看用户的关注者 - 没关系,我可以跳过这些 - 但他们停止了我的程序。以下代码就是这种情况:

connections = {}
for x in user_ids:
    l=[]
    for page in tweepy.Cursor(api.followers_ids, user_id=x).pages():
        l.append(page)
    connections[x]=l

第二个是我无法知道我的程序何时需要休眠以避免速率限制。如果我在此查询中的每个页面之后等待 60 秒 - 我的程序将花费太长时间才能运行。

我试图找到一个简单的"exists_friendship"命令,它可能会以更简单的方式解决这些问题 - 但我只发现随着对 API 1.1 的更改而过时的东西。我愿意使用其他 Python 包。谢谢。

if api.exists_friendship(userid_a, userid_b):
    print "a follows b"
else:
    print "a doesn't follow b, check separately if b follows a"

最新更新