【问题标题】:Tweepy check if user A is following user B?Tweepy 检查用户 A 是否正在关注用户 B?
【发布时间】:2014-12-26 01:16:08
【问题描述】:

我有这个代码(不是所有代码),它基本上获得了 20 个最近的关注者。问题是它会向我已经关注的人发出关注请求。这不是问题,但 twitter 限制了你可以发出多少请求。

followers = api.followers()
following = api.friends()
tofollow = [x for x in followers if x not in following]
for u in tofollow:
   try:
      u.follow()
      number_followed+=1
      print number_followed,". ", u.screen_name
   except tweepy.TweepError as err:
    print "Error: when following ", u.screen_name

我认为这与我何时跟随有关

有什么想法吗?

【问题讨论】:

  • 什么是追随者和追随者?您确定它们都以相同的格式返回用户吗?

标签: python twitter tweepy


【解决方案1】:

我认为如果你想对整个集合而不是最近的 20 个进行 Twitter 查询,你应该使用光标。

例如:

tweepy.Cursor(api.followers).items()

此外,如果您不想违反 twitter 速率限制,您可以在初始化 api 对象时使用以下行:

api = tweepy.API(auth, wait_on_rate_limit=True)

希望对您有所帮助。这是一个例子:

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

friends = api.friends_ids(api.me().id)
print("You follow", len(friends), "users")

for follower in tweepy.Cursor(api.followers).items():
    if follower.id != api.me().id:
        if follower.id in friends:
            print("You already follow", follower.screen_name)
        else:
            follower.follow()
            print("Started following", follower.screen_name)

【讨论】:

    猜你喜欢
    • 2023-04-10
    • 2021-06-11
    • 1970-01-01
    • 2015-08-02
    • 2012-12-24
    • 2018-03-20
    • 2013-07-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多