1

我正在尝试使用 python-twitter API 检索用户朋友网络。我正在使用 getFriendIDs() 方法检索特定 Twitter 用户关注的所有帐户的 ID。以下是我的测试代码的一小部分:

for item in IdList:
    aDict[item] = api.GetFriendIDs(user_id=item,count=4999)
    print "sleeping 60"
    time.sleep(66)
    print str(api.MaximumHitFrequency())+" The maximum hit frequency"
    print api.GetRateLimitStatus()['resources']['friends']['/friends/ids']['remaining']

IdList 中有 35 个 id(Twitter 用户帐户),对于每个项目,我最多检索 4999 个 ID,ID 为“item”的当前用户正在关注。我知道 twitter 的新速率限制,其中速率限制窗口已从 60 分钟更改为 15 分钟,并且他们建议您不要每分钟向服务器发出超过一个请求 (api.MaximumHitFrequency( ))。所以基本上 15 分钟内有 15 个请求。这正是我正在做的事实上我每 66 秒而不是 60 秒向服务器发出一个请求,但是在 6 个请求后我得到一个速率限制错误。我无法弄清楚为什么会这样。请让我知道是否有其他人遇到过这个问题。

4

1 回答 1

0

Have a look at https://github.com/bear/python-twitter/wiki/Rate-Limited-API---How-to-deal-with.

Also, it might help to use a newer version of the python-twitter code. The MaximumHitFrequency and GetRateLimitStatus methods have been modified with https://github.com/bear/python-twitter/commit/25cccb81fbeb4c630a0024981bc98f7fb41f3933.

于 2013-08-28T09:09:21.163 回答