我的问题如下:我有一个在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列表将包含所有响应对象。

09-25 21:06