Вы получаете эту ошибку из-за writer.flush();
. Это может привести к IOException, поскольку он записывает любой буферный вывод в базовый поток. Если возникает исключение, писатель не будет закрыт.
Если его обязательный для сброса в finally{..}
, то используйте выделенные try{..} catch{..}
для каждой строки следующим образом:
finally {
if (writer != null) {
try {
writer.flush();
} catch (IOException e) {
e.printStackTrace();
}
try {
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Вы можете написать как следующее,
for _d in data:
if hasattr(_d, 'matched-bets'):
print(_d['matched-bets']['id'])
I tried your json object. I change "in-play": false,
- "in-play": False,
и работает нормально.
Попробуйте изменить false
на False
Обновление:
import json
# its load your api data
json_data = json.loads(data)
# Convert to python object
python_object_data=json.dumps(json_data)
#
for d in python_object_data:
id = d['matched-bets'][0]['id']
print(id)
Если вы используете обновленный формат данных, используйте:
[111 ]