Tweepy search_users returns 只有 50 条记录
Tweepy search_users returns only 50 records
我希望在 Twitter 上搜索用户名中包含关键字的所有用户。我通过以下方式执行此操作:
api = tweepy.API(auth, wait_on_rate_limit= True)
def get_users():
count = 0
all_users = []
for page in tweepy.Cursor(api.search_users,["keyword"]).pages():
#page[0] has the UserObj
id_str = page[0].id_str
scr_name = page[0].screen_name
print(count, id_str)
这是有效的,但它只是 return 前 50 个结果。我如何 return 获得更大的结果集?说 2000 以上?
首先,您只能使用 API 检索前 1000 个用户(参见 here)。
那你为什么只用page[0]
?有20个用户par page,不是只有一个。我敢打赌,这就是您遇到此问题的原因(您只能获得 1000 个用户,因此如果每页有 20 个用户,则意味着 50 个页面,如果您只读取每个页面的第一个用户,则意味着 50 个用户)。
顺便说一下,您可以使用 .items()
而不是 .pages()
。
我希望在 Twitter 上搜索用户名中包含关键字的所有用户。我通过以下方式执行此操作:
api = tweepy.API(auth, wait_on_rate_limit= True)
def get_users():
count = 0
all_users = []
for page in tweepy.Cursor(api.search_users,["keyword"]).pages():
#page[0] has the UserObj
id_str = page[0].id_str
scr_name = page[0].screen_name
print(count, id_str)
这是有效的,但它只是 return 前 50 个结果。我如何 return 获得更大的结果集?说 2000 以上?
首先,您只能使用 API 检索前 1000 个用户(参见 here)。
那你为什么只用page[0]
?有20个用户par page,不是只有一个。我敢打赌,这就是您遇到此问题的原因(您只能获得 1000 个用户,因此如果每页有 20 个用户,则意味着 50 个页面,如果您只读取每个页面的第一个用户,则意味着 50 个用户)。
顺便说一下,您可以使用 .items()
而不是 .pages()
。