Maison > Article > développement back-end > Méthode d'analyse du robot 1 : analyse JOSN
De nombreuses langues peuvent explorer, mais les robots basés sur python sont plus concis et pratiques. Les robots d’exploration sont également devenus un élément essentiel du langage Python. Il existe de nombreuses façons pour les robots d'analyse d'analyser les données. Dans l'article précédent, je vous ai présenté Quels types de données les robots d'exploration peuvent-ils obtenir et les méthodes d'analyse spécifiques, Cet article vous propose l'analyse JSON.
JSON
json est simplement un objet et un tableau en JavaScript, donc ces deux structures sont des objets et des tableaux Structure, via ces deux structures diverses structures complexes peuvent être représentées.
Objet :
l'objet est représenté en js comme le contenu entouré de { }, et la structure des données est { clé : valeur, clé : valeur, ... } La structure des paires clé-valeur. Dans les langages orientés objet, la clé est l'attribut de l'objet et la valeur est la valeur de l'attribut correspondante, elle est donc facile à comprendre. La méthode value est object.key pour obtenir la valeur de l'attribut. . Le type de cette valeur d'attribut peut être un nombre, des chaînes, des tableaux, des objets.
Array :
Array en js est le contenu entouré de crochets [ ], et la structure des données est ["Python", "javascript", "C++" , ...], la méthode d'acquisition de valeur est la même que dans toutes les langues, en utilisant l'index pour obtenir, le type de valeur du champ peut être des nombres, des chaînes, des tableaux, des objets.
JSON (JavaScript Object Notation) est un format d'échange de données léger qui facilite la lecture et l'écriture par les utilisateurs. Il facilite également l’analyse et la génération des machines. Il convient aux scénarios d'interaction de données, tels que l'interaction de données entre le front et le backend d'un site Web.
import json def resolveJson(path): file = open(path, "rb") fileJson = json.load(file) field = fileJson["field"] futures = fileJson["futures"] type = fileJson["type"] name = fileJson["name"] time = fileJson["time"] return (field, futures, type, name, time) def output(): result = resolveJson(path) print(result) for x in result: for y in x: print(y) path = r"C:\Users\dell\Desktop\kt\test.json" output()
Notez que lorsque la fonction renvoie plusieurs valeurs, elle renvoie un tuple
Lors de l'exécution d'une boucle for sur une chaîne, chaque caractère sera parcouru
Python JSON
Dans ce chapitre, nous présenterons comment utiliser le langage Python pour encoder et décoder des objets JSON.
JSON (JavaScript Object Notation) est un format d'échange de données léger, facile à lire et à écrire pour les humains.
Fonction JSON
L'utilisation de la fonction JSON nécessite d'importer la librairie json : import json.
Fonction d Chaîne JSON dans un objet Python
json.dumpsjson.dumps est utilisé pour encoder des objets Python dans Chaînes JSON.
json.dumps(obj, skipkeys=False, Ensure_ascii=True, check_circular=True, Allow_nan=True, cls=None, indent=None, séparateurs =Aucun, encoding="utf-8", default=Aucun, sort_keys=False, **kw)
ExempleL'exemple suivant encode le tableau en JSON formater les données : #!/usr/bin/python
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json = json.dumps(data)
print json
Le résultat de l'exécution du code ci-dessus est :
[{"a": 1, "c": 3, "b": 2, "e": 5, "d": 4}]
Utiliser les paramètres pour formater les données JSON pour la sortie :
>>> import json >>> print json.dumps({'a': 'Runoob', 'b': 7}, sort_keys=True, indent=4, separators=(',', ': ')) { "a": "Runoob", "b": 7 }Comparaison de conversion de l'original python tapez en json tapez Table :
int, long, flottant 🎜>False parce que faux None null json.loads json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。 语法 实例 以下实例展示了Python 如何解码 JSON 对象: 以上代码执行结果为: json 类型转换到 python 的类型对照表: JSON Python object dict array list string unicode number (int) int, long number (real) float true True false False null None 使用第三方库:Demjson Demjson 是 python 的第三方模块库,可用于编码和解码 JSON 数据,包含了 JSONLint 的格式化及校验功能。 Github 地址:https://github.com/dmeranda/demjson 官方地址:http://deron.meranda.us/python/demjson/ 环境配置 在使用 Demjson 编码或解码 JSON 数据前,我们需要先安装 Demjson 模块。本教程我们会下载 Demjson 并安装: JSON 函数 函数 描述 encode 将 Python 对象编码成 JSON 字符串 decode 将已编码的 JSON 字符串解码为 Python 对象 encode Python encode() 函数用于将 Python 对象编码成 JSON 字符串。 语法 demjson.encode(self, obj, nest_level=0) 实例 以下实例将数组编码为 JSON 格式数据: 以上代码执行结果为: decode Python 可以使用 demjson.decode() 函数解码 JSON 数据。该函数返回 Python 字段的数据类型。 语法 demjson.decode(self, txt) 实例 以下实例展示了Python 如何解码 JSON 对象: 以上代码执行结果为:json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
<pre class="brush:php;toolbar:false">
#!/usr/bin/python
import json
jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
text = json.loads(jsonData)
print text
{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}
$ tar -xvzf demjson-2.2.3.tar.gz
$ cd demjson-2.2.3
$ python setup.py install
<pre class="brush:php;toolbar:false">
#!/usr/bin/python
import demjson
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json = demjson.encode(data)
print json
[{"a":1,"b":2,"c":3,"d":4,"e":5}]
<pre class="brush:php;toolbar:false">
#!/usr/bin/python
import demjson
json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
text = demjson.decode(json)
print text
{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!