我的问题如下:我有一个在nparray(ip_array)中排序的Ips列表,然后我想对所有Ips进行多个请求并将输出保存在单个json中。 (APIKEY实际上是代码xD中的api密钥)
url_auth = 'https://api.ipgeolocation.io/ipgeo?apiKey=APIKEYAPIKEYAPIKEY='
for i in np.arange(1,4):
r[i] = requests.request(method='get',url=url_auth,params={'ips':ip_array[i]}) #i tested the single request and it works in this way.
但是后来,我得到了
TypeError: 'Response' object does not support item assignment
然后,我尝试将最后一行替换为
r = requests.request(method='get',url=url_auth,params={'ips':ip_array[i]})
但是,当我这样做
r.json()
我只收到最后一个请求(很明显)。
最佳答案
存储每次迭代的响应:
url_auth = 'https://api.ipgeolocation.io/ipgeo?apiKey=APIKEYAPIKEYAPIKEY='
responses = []
for i in np.arange(1,4):
response = requests.request(method='get',url=url_auth,params={'ips':ip_array[i]})
responses.append(response.json())
responses
列表将包含所有响应对象。