Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从分页响应获取所有数据_Python_Api_Flask_Request - Fatal编程技术网

Python 从分页响应获取所有数据

Python 从分页响应获取所有数据,python,api,flask,request,Python,Api,Flask,Request,我从一个已分页的端点发出请求,该端点正确地只返回第一个页面,其中包含指向第二个页面的链接。我想一次返回所有数据 这是我的密码 response = requests.get("https://swapi.dev/api/starships/") 我试过?max=26和?limit=26,但运气不好 样本响应: { "count": 36, "next": "http://swapi.dev/api/starship

我从一个已分页的端点发出请求,该端点正确地只返回第一个页面,其中包含指向第二个页面的链接。我想一次返回所有数据

这是我的密码

response = requests.get("https://swapi.dev/api/starships/")
我试过?max=26?limit=26,但运气不好

样本响应:

{
  "count": 36, 
  "next": "http://swapi.dev/api/starships/?page=2", 
  "previous": null, 
  "data": [
    {
      "MGLT": "60",.....}
      ]

}
      

请问我如何一次返回所有36个元素?

也许不是最漂亮的解决方案,但可以工作:

导入请求
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
星际飞船=列表()
下一步https://swapi.dev/api/starships/?page=1'
而下一个url:
query\u results=requests.get(next\u url).json()
扩展(查询结果['results'])
下一个url=查询结果['next']

您知道只需一个请求就可以获取所有页面吗?我不知道。请问我该怎么做?你查阅过文档吗?我在文档中找不到任何东西。这是文档的链接:你能澄清一下你是想通过一个请求获取所有数据,还是只是想循环并发出多个请求?这并不是一次获取所有数据,对吗?是的,正如你所看到的,每个页面都会发出单独的请求,因此在某些情况下可能会出现问题。对,那么它真的解决了OP的问题吗?首先,我提到它不是最好的解决方案。第二,它被OP接受了,所以这仅仅意味着OP收到了一个对他个人有用的答案。