为了账号安全,请及时绑定邮箱和手机立即绑定

如何修复 python 请求分页不起作用

如何修复 python 请求分页不起作用

慕仙森 2023-08-22 18:03:56
我正在尝试使用 python 请求进行分页,但我似乎无法获取总页面,并且 JSON 响应不会随着页面的更改而更新。url = 'https://www.walmart.com/store/1003-York-pa/search?query=ice%20cream'api_url = 'https://www.walmart.com/store/electrode/api/search'    params = {        'query': word,        'cat_id': 0,        'ps': 24,        'offset': 0,        'prg': 'desktop',        'stores': re.search(r'store/(\d+)', url).group(1)    }    data1 = requests.get(api_url, params=params).json()        num_pages = data1['pagination']['pages'][-1]['page']    for page in range(0, num_pages + 1):             params = {                'query': word,                'cat_id': 0,                'page':page,     // try to update the new page                'ps': 24,                'offset': 0,                'prg': 'desktop',                'stores': re.search(r'store/(\d+)', url).group(1)            }     data = requests.get(api_url, params=params).json()我做错了什么,我该如何解决?
查看完整描述

1 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

在第二个params设置(for循环内)中,您需要删除'offset': 0,,因为它指示服务器每次都从第一页的第一个结果中获取。这是唯一的主要错误。修复后,我开始为每个页面请求获取不同的产品。

其次,for 循环可能应该从 开始1,因为正如我从响应中看到的,页面是从 1 开始计数的。

第三,第二次requests.get调用可能应该在分页 for 循环内,或者您只需复制带有错误缩进的粘贴代码。


查看完整回答
反对 回复 2023-08-22
  • 1 回答
  • 0 关注
  • 157 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信