Unten ist mein Zeichenfolge, die mit dem unten stehenden Code ausgedruckt wird immer -Ungültige Steuerzeichen mit Python json.loads
jsonString = data.decode("utf-8")
print jsonString
Und unten ist die Zeichenfolge, die auf der Konsole ausgedruckt wurde -
{"description":"Script to check testtbeat of TEST 1 server.", "script":"#!/bin/bash\nset -e\n\nCOUNT=60 #number of 10 second timeouts in 10 minutes\nSUM_SYNCS=0\nSUM_SYNCS_BEHIND=0\nHOSTNAME=$hostname \n\nwhile [[ $COUNT -ge \"0\" ]]; do\n\necho $HOSTNAME\n\n#send the request, put response in variable\nDATA=$(wget -O - -q -t 1 http://$HOSTNAME:8080/heartbeat)\n\n#grep $DATA for syncs and syncs_behind\nSYNCS=$(echo $DATA | grep -oE 'num_syncs: [0-9]+' | awk '{print $2}')\nSYNCS_BEHIND=$(echo $DATA | grep -oE 'num_syncs_behind: [0-9]+' | awk '{print $2}')\n\necho $SYNCS\necho $SYNCS_BEHIND\n\n#verify conditionals\nif [[ $SYNCS -gt \"8\" && $SYNCS_BEHIND -eq \"0\" ]]; then exit 0; fi\n\n#decrement the counter\nlet COUNT-=1\n\n#wait another 10 seconds\nsleep 10\n\ndone\n"}
Aber wenn ich diese json.loads
als unten-
jStr = json.loads(jsonString)
ich Gettin gezeigt mit python laden aus bin g Dieser Fehler -
Ich sah Char 202, aber ich habe keine Ahnung, warum das ein Problem verursacht? Char 202 in meinem Notizblock ++ ist e
Ich denke .. Oder kann ich es falsch berechnen
Irgendeine Idee was ist falsch? Wie finde ich heraus, welches Problem verursacht?
UPDATE: -
jsonString = {"description":"Script to check testtbeat of TIER 1 server.", "script":"#!/bin/bash\nset -e\n\nCOUNT=60 #number of 10 second timeouts in 10 minutes\nSUM_SYNCS=0\nSUM_SYNCS_BEHIND=0\nHOSTNAME=$hostname \n\nwhile [[ $COUNT -ge \"0\" ]]; do\n\necho $HOSTNAME\n\n#send the request, put response in variable\nDATA=$(wget -O - -q -t 1 http://$HOSTNAME:8080/heartbeat)\n\n#grep $DATA for syncs and syncs_behind\nSYNCS=$(echo $DATA | grep -oE 'num_syncs: [0-9]+' | awk '{print $2}')\nSYNCS_BEHIND=$(echo $DATA | grep -oE 'num_syncs_behind: [0-9]+' | awk '{print $2}')\n\necho $SYNCS\necho $SYNCS_BEHIND\n\n#verify conditionals\nif [[ $SYNCS -gt \"8\" && $SYNCS_BEHIND -eq \"0\" ]]; then exit 0; fi\n\n#decrement the counter\nlet COUNT-=1\n\n#wait another 10 seconds\nsleep 10\n\ndone\n"}
print jsonString[202]
Below Fehler Ich habe -
KeyError: 202
Hast Du bei der Charakter sah 202 noch? –
@Ignacio Vazquez-Abrams: Ich sah es an, aber ich habe keine Ahnung, warum das ein Problem verursacht? Char 202 in meinem Editor ++ ist 'e' ich denke .. Oder kann ich es falsch berechnen – ferhan
versuchen' print jsonString [202] ' – metatoaster