python处理json数据(python 处理json)

本篇文章给大家谈谈python处理json数据,以及python 处理json对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

python json快速解析命令

json.dumps 用于将 Python 对象编码成 JSON 字符串。

json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。

demjson.encode() 函数用于将 Python 对卖碧象编码成 JSON 字符串芹拍。

demjson.decode() 函数解码 JSON 数据。该函数返回 Python 字段嫌配羡的数据类型。

1、以下实例将数组编码为 JSON 格式数据:

#!/usr/bin/python

import json

data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]

json = json.dumps(data)

print json

2、以下实例展示了Python 如何解码 JSON 对象:

#!/usr/bin/python

import json

jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';

text = json.loads(jsonData)

print text

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,能够让下一行在第一行的基础上空格。

其用法如下:

如何使用python提取json中指定字段的数据

首迹樱先你获取的json数据是字符歼租串a的话,就

import json

d = json.loads(a)

x =d.get("想要的字段")

x就是你要氏州兆的数据

[img]

Python网络请求和解析json数据

Python 的 json 模块提供了两个函数 json.dumps() 和 json.loads() 来编码和解码JSON数据。

如果要处理的弊液是文件而不是字符串,可以使用 json.dump() 和 json.load() 来编码和解察卜携码JSON数据。例如败伏:

处理和响应JSON数据

处理和响应JSON数据

使用 HTTP POST 方法传到网站服务器的数据格式可以有很多种,比如「获取POST方法传送的数据」课程中讲到的name=Loenpassword=loveyou这种用过符号分割的key-value键值对格式。我们也可以用JSON格式、XML格式。相比斗顷山XML的重量、规范繁琐,JSON显得非常小巧和易用。

如果POST的数据是JSON格式,request.json会自动将json数据转换成Python类型(字典或者列表)。

编写server.py:

from flask import Flask, request

app = Flask("myapp")

@app.route('/add', methods=['POST'])

def add():

    print(request.headers)

    print(type(request.json))

    print(request.json)

    result = request.json['n1'] + request.json['n2']

    return str(result)

if __name__ == '__main__':

    app.run(host='127.0.0.1', port=5000, debug=True)

编写client.py模拟浏览器请求:

import requests

json_data = {'n1': 5, 'n2': 3}

r = requests.post("", json=json_data)

print(r.text)

运行server.py,然后运行client.py,client.py 会在终端输出:

注意,请求头中Content-Type的值是application/json。

响应JSON

响应JSON时,除了要把响应体改成JSON格式,响应头的Content-Type也要设置为application/json。

编写server.py:

from flask import Flask, request, Response

import json

app = Flask("myapp")

@app.route('/add', methods=['POST'])

def add():

    result = {'sum': request.json['n1'] + request.json['n2']}

    return Response(json.dumps(result),  mimetype='application/json')

if __name__ == '__main__':

    app.run(host='127.0.0.1', port=5000, debug=True)

修改后运行。

编写client.py:

import requests

json_data = {'n1': 5, 'n2'空中: 3}

r = requests.post("", json=json_data)

print(r.headers)

print(r.text)

运行client.py,将显示:

client终端返回的第一段内容是服务器的响应头,第二段内容是响应体,也就是服务器返回的JSON格式数据。

另外,如果需要服务器的HTTP响应头具有更好的可定制性,比如自定义Server,可以如下修改add()函数:

@app.route('/add', methods=['POST'])

def add():

    result = {'sum': request.json['n1'] + request.json['n2']}

    resp = Response(json.dumps(result),  mimetype='application/json'乎磨)

    resp.headers.add('Server', 'python flask')

    return resp

client.py运行后会输出:

{'Content-Type': 'application/json', 'Content-Length': '10', 'Server': 'python flask', 'Date': 'Wed, 11

Sep 2019 09:09:18 GMT'}

{"sum": 8}

响应JSON

使用 jsonify 工具函数。

from flask import Flask, request, jsonify

app = Flask("myapp")

@app.route('/add', methods=['POST'])

def add():

    result = {'sum': request.json['n1'] + request.json['n2']}

    return jsonify(result)

if __name__ == '__main__':

    app.run(host='127.0.0.1', port=5000, debug=True)

运行结果:

关于python处理json数据和python 处理json的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表