Ho problemi durante l'analisi di un JSON con python e ora sono bloccato.
Il problema è che le entità del mio JSON non sono sempre le stesse. Il JSON è qualcosa di simile:Parsing JSON con python: campi vuoti
"entries":[
{
"summary": "here is the sunnary",
"extensions": {
"coordinates":"coords",
"address":"address",
"name":"name"
"telephone":"123123"
"url":"www.blablablah"
},
}
]
posso spostare attraverso il JSON, ad esempio:
for entrie in entries:
name =entrie['extensions']['name']
tel=entrie['extensions']['telephone']
Il problema nasce perché a volte, il JSON non ha tutti i "campi", per esempio, il campo telephone
, a volte manca, quindi, lo script ha esito negativo con KeyError
, poiché in questa voce manca la chiave .
Quindi, la mia domanda: come posso eseguire questo script, lasciando uno spazio vuoto dove telefono manca? Ho provato con:
if entrie['extensions']['telephone']:
tel=entrie['extensions']['telephone']
ma penso che non è ok.
bello, mi piace questo meglio allora 'defaultdict 'perché all'interno del metodo' __missing__' si potrebbe aggiungere qualche logica per catturare un potenziale bug. Con 'defaultdict' mi fa sempre rabbrividire perché non otterrò un KeyError quando faccio un refuso. –