Ich benutze Python 'Anfragen', um eine Anfrage an einen Server zu senden. Das Ergebnis wird als REST-Antwort zurückgegeben. Jetzt brauche ich wie verschiedene Felder oder Abschnitte des Response-Objekt zu erhalten .... Mein anfordernden Skript ist als:Parsen Sie eine REST-Antwort mit Python
import json
import requests
proxies = {
'http': 'http://10.10.80.12:3128',
'https': 'http://10.10.80.12:3128'
}
url = 'http://achecker.ca/checkacc.php'
payload = {'uri': 'https://www.google.com',
'id': 'XXXXXXXXXXXXXXXXXXXXXXXXXX',
'output': 'rest',
'guide': 'WCAG2-AA',
'offset': '10'
}
response = requests.get(url,params=payload,proxies=proxies)
print response.text
Der Teil des Ergebnisses durch die obige Skript zurückgegeben wird, wie:
<resultset>
<summary>
<status>FAIL</status>
<sessionID>8e03e40492a7f16a2b63c47b07588f81c746faca</sessionID>
<NumOfErrors>2</NumOfErrors>
<NumOfLikelyProblems>1</NumOfLikelyProblems>
<NumOfPotentialProblems>113</NumOfPotentialProblems>
<guidelines>
<guideline>WCAG 2.0 (Level AA)</guideline>
</guidelines>
</summary>
</resultset>
Aus dem obigen Ergebnis möchte ich Status, NUMOFERRORS, NumOfLikelyProblems, NumOfPotentialProblems abzurufen. Beautifulsoup kann eine Lösung sein, aber ich möchte es anders machen.
Sir, ich schätze die rechtzeitige Antwort und das wird mir definitiv helfen. Aber ich bin nicht in der Lage, das Wörterbuch mit Hilfe von: response_dict ['Zusammenfassung'] ['NumOfErrors'] –
Dies ist der Fehler, den ich bekomme .. TypeError: string-Indizes müssen ganze Zahlen sein, nicht str –
Um den 'NumOfError' zu drucken verwenden response_dict ['resultset'] ['Zusammenfassung'] ['NumOfErrors'] –