本文目录一览:
- 1、python-接口调用传json参数的两种方法
- 2、Python网络请求和解析json数据
- 3、python接口请求 JSON parse error: Unrecognized token 'type': was expecting 'null'
- 4、Python爬虫(七)数据处理方法之JSON
python-接口调用传json参数的两种方法
payload={
"Jessie":"Hello",
"python":12334,
"requests":True,
}
url=" "
r1=requests.post(url,json=payload)
r2 = requests.post(url,json.dumps(payload))
print(r1.text)
r2=requests.post(url,data=json.dumps(payload))
print(r2.text)
Python网络请求和解析json数据
Python 的 json 模块提供了两个函数 json.dumps() 和 json.loads() 来编码和解码JSON数据。
如果要处理的是文件而不是字符串,可以使用 json.dump() 和 json.load() 来编码和解码JSON数据。例如:
python接口请求 JSON parse error: Unrecognized token 'type': was expecting 'null'
报错的原因:传参不正确,协议头信息的Content-Type字段定义了请求格式,传json数据请求头为:Content-Type:application/json
可以先查看参数的类型:print(type(data))
data1 = json.dumps(data)#类型转换
r = requests.post(url=url, headers=headers, data=data1)
res = requests.post(url=url, params=params, json=data, headers=headers)
Python爬虫(七)数据处理方法之JSON
JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation),是轻量级的文本数据交换格式,且具有自我描述性,更易理解。
JSON看起来像python类型(列表,字典)的字符串。
在之前的文章中,我们说到了怎么用response的方法,获取到网页正确解码后的字符串。如果还有不懂的,可以先阅读 Python爬虫(三)Requests库 。接下来以有道翻译为例子,说说怎么通过网页解码后的字符串,提取到翻译结果。
再结合上述有道翻译的例子,得到字典类型的返回结果,并提取出来翻译结果。
将上述例子的dict_json换成str字符串,再写入文本中。
执行完上述的程序,会得到一个fanyi.txt的文件,其结果如下:{"type": "ZH_CN2EN", "errorCode": 0, "elapsedTime": 1, "translateResult": [[{"src": "\u4eba\u751f\u82e6\u77ed\uff0c\u6211\u7528python", "tgt": "Life is too short, I use python"}]]}。这样子的一份文档,中文部分显示的是二进制,且格式非常不利于阅读,这并不是我们想要的结果。好在json.dumps()为我们提供的两个方法,以帮助我们更好阅读文档。
1.ensure_ascii,能够让中文显示成中文;
2.indent,能够让下一行在第一行的基础上空格。
其用法如下: