Hallo, ich bin wirklich neu in JSON und Python, hier ist mein Dilemma, das mich seit zwei Tagen nervt. Hier ist der Beispiel-JSON, den ich analysieren möchte.JSON mit Python analysieren - Wie man auf tiefe Elemente zugreift
{
"Tag1":"{
"TagX": [
{
"TagA": "A",
"TagB": 1.6,
"TagC": 1.4,
"TagD": 3.5,
"TagE": "01",
"TagF": null
},
{
"TagA": "A",
"TagB": 1.6,
"TagC": 1.4,
"TagD": 3.5,
"TagE": "02",
"TagF": null
}
],
"date": "10.03.2017 21:00:00"
}"
}
Hier ist mein Python-Code:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
import json
import urllib2
jaysonData = json.load(urllib2.urlopen('URL'))
print jaysonData["Tag1"]
Wie ich Werte von TagB und TagC bekommen kann? Wenn ich versuche, auf sie zuzugreifen mit
jaysonData = json.load(urllib2.urlopen('URL'))
print jaysonData["Tag1"]["TagX"]["TagB"]
Die Ausgabe lautet:
TypeError: string indices must be integers
Wenn ich dies tun:
print jaysonData["Tag1"]
Die Ausgabe lautet:
{
"TagX": [
{
"TagA": "A",
"TagB": 1.6,
"TagC": 1.4,
"TagD": 3.5,
"TagE": "01",
"TagF": null
},
{
"TagA": "A",
"TagB": 1.6,
"TagC": 1.4,
"TagD": 3.5,
"TagE": "02",
"TagF": null
}
],
"date": "10.03.2017 21:00:00"
}"
I müssen TagX, TagD, Tag erreichen E aber der folgende Code gibt diesen Fehler:
print jaysonData["Tag1"]["TagX"]
druckt
print jaysonData["Tag1"]["TagX"]
TypeError: string indices must be integers
Wie kann ich TagA auf TagF mit Python zugreifen? Vielen Dank im Voraus.
Dies ist es! Vielen Dank für Ihre wertvolle Hilfe. – user611811