Tweepy 遍历 tweepy.Cursor(api.friends).items()
Tweepy iterating over tweepy.Cursor(api.friends).items()
我正在尝试获取用户的朋友并将他们附加到给定条件的列表中:
for friend in tweepy.Cursor(api.friends).items():
if friend not in visited:
screen_names.append(friend.screen_name)
visited.append(friend.screen_name)
但是我得到一个错误:
raise RateLimitError(error_msg, resp)
tweepy.error.RateLimitError: [{u'message': u'Rate limit exceeded', u'code': 88}]
你能给我一些解决这个问题的提示吗?非常感谢
每 Twitter's API documentation,您已达到查询限制。看起来速率限制每 15 分钟查询一次生效,因此请在 30 分钟后重试或使用不同的 IP 地址点击 API。如果向下滚动 Twitter 的文档,您将看到代码 88。
默认情况下,friends
API
class 的方法,returns 每次调用仅包含 20 个用户的列表,而 Twitter API 你是有限的每 window(15 分钟)仅调用 15 次。因此,您只能在 15 分钟内获取 20 x 15 = 300 个朋友。
tweepy
中的 Cursor
是另一种在每次调用 Twitter API.
时无需管理 cursor
值即可获得结果的方法
您可以通过包含额外参数 count
.
来增加每次调用获取的结果数
tweepy.Cursor(api.friends, count = 200)
count
的最大值可以是 200。如果你的朋友超过 200 x 15 = 3000,那么你需要使用正常的 api.friends
方法,同时保持 cursor
值并使用 sleep
来分配调用时间。有关详细信息,请参阅 GET friends/list 页面。
从 tweepy 3.2+ 开始,您可以指示 tweepy 库等待速率限制。这样您就不必在代码中这样做。
要使用此功能,您需要按如下方式初始化 api 句柄:
self.api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
新变量的文档如下。
- wait_on_rate_limit – Whether or not to automatically wait for rate limits to replenish
- wait_on_rate_limit_notify – Whether or not to print a notification when Tweepy is waiting for rate limits to replenish
我正在尝试获取用户的朋友并将他们附加到给定条件的列表中:
for friend in tweepy.Cursor(api.friends).items():
if friend not in visited:
screen_names.append(friend.screen_name)
visited.append(friend.screen_name)
但是我得到一个错误:
raise RateLimitError(error_msg, resp)
tweepy.error.RateLimitError: [{u'message': u'Rate limit exceeded', u'code': 88}]
你能给我一些解决这个问题的提示吗?非常感谢
每 Twitter's API documentation,您已达到查询限制。看起来速率限制每 15 分钟查询一次生效,因此请在 30 分钟后重试或使用不同的 IP 地址点击 API。如果向下滚动 Twitter 的文档,您将看到代码 88。
默认情况下,friends
API
class 的方法,returns 每次调用仅包含 20 个用户的列表,而 Twitter API 你是有限的每 window(15 分钟)仅调用 15 次。因此,您只能在 15 分钟内获取 20 x 15 = 300 个朋友。
tweepy
中的 Cursor
是另一种在每次调用 Twitter API.
cursor
值即可获得结果的方法
您可以通过包含额外参数 count
.
tweepy.Cursor(api.friends, count = 200)
count
的最大值可以是 200。如果你的朋友超过 200 x 15 = 3000,那么你需要使用正常的 api.friends
方法,同时保持 cursor
值并使用 sleep
来分配调用时间。有关详细信息,请参阅 GET friends/list 页面。
从 tweepy 3.2+ 开始,您可以指示 tweepy 库等待速率限制。这样您就不必在代码中这样做。
要使用此功能,您需要按如下方式初始化 api 句柄:
self.api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
新变量的文档如下。
- wait_on_rate_limit – Whether or not to automatically wait for rate limits to replenish
- wait_on_rate_limit_notify – Whether or not to print a notification when Tweepy is waiting for rate limits to replenish