使用一个简单的示例即可正常运行
from stackapi import StackAPI
SITE = StackAPI('stackoverflow', key="xxxxxxx")
SITE.max_pages=10000000
SITE.page_size=100
post = SITE.fetch('/users/{ids}/reputation-history', ids=[11786778])
但是,如果我尝试将其运行到用于用户列表的for循环中,并将每次迭代的结果保存到一个变量中,该变量将具有所有结果,我将失败:
任何想法我该如何解决?
lst = ['11786778','12370060']
df = pd.DataFrame(lst)
SITE = StackAPI('stackoverflow', key="xxxx")
for i in range(1,len(df)):
SITE.max_pages=10000000
SITE.page_size=100
post = SITE.fetch('/users/{ids}/reputation-history', ids=lst[i])
答案 0 :(得分:1)
因为列表索引从0开始,而不是1。range(1, len(df))
意味着i
从1开始,因此在SITE.fetch
中,您仅使用ids=lst[1]
for i in range(len(df))
要保留fetch
的所有结果,请使用字典列表
results = []
for i in range(1,len(df)):
SITE.max_pages=10000000
SITE.page_size=100
post = SITE.fetch('/users/{ids}/reputation-history', ids=lst[i])
results.append(post)