使用 Python 爬虫获取网页 JSON 文件:如何正确传递表单数据?
你在尝试获取网页中的 json 文件时遇到了问题,我们来分析一下你的代码。
你使用的是 requests 库来发送 get 请求,并提供了 headers 和 data 参数。headers 用于指定请求标头,data 用于提供请求正文。
你的代码中的问题在于,你将表单数据以 json 字符串的形式作为 data 参数传递。而该 api 似乎需要以表单编码的参数形式传递数据。
立即学习“Python免费学习笔记(深入)”;
你可以按照以下步骤进行调整:
import requests # 构建表单数据 data = { 'game': 'csgo', 'goods_id': '769258', 'page_num': '1', 'sort_by': 'price.asc', 'mode':'', 'allow_tradable_cooldown': '1', 'min_paintwear': '0.15', 'max_paintwear': '0.18', '_': '1617168547790' } # 发送 GET 请求 response = requests.get(url=url, headers=head, params=data)
通过将 data 参数传递为 params 而不是 data,你将按照表单编码的形式发送请求。
现在你应该能够正确获取 json 文件。