Обработка строк Unicode в возвращенных данных JSON
Я пытаюсь распечатать данные из извлеченного JSON, однако данные содержат данные, декодированные в Unicode. Как я могу закодировать (см. Пример), чтобы он отображался правильно. Я очень плохо знаком с Python и не смог заставить его работать, я использую Windows 7, Python 2.7 на терминале командной строки. Спасибо!
Пример: результаты >> название:
"R\u00f6yksopp - 49 процентов" должен печатать его как "Röyksopp - 49 процентов"
"title": "R\u00f6yksopp - 49 Percent",
JSON:
"results": [{
"style": ["House", "Electro", "Synth-pop"],
"thumb": "http://api.discogs.com/image/R-90-530519-1236701656.jpeg",
"format": ["CD", "Maxi-Single"],
"country": "Europe",
"barcode": ["5 028589 023420", "BEL/BIEM", "LC 3098"],
"uri": "/R%C3%B6yksopp-49-Percent/master/30161",
"label": ["Virgin", "Labels", "Wall Of Sound"],
"catno": "0946 3378752 0",
"year": "2005",
"genre": ["Electronic"],
"title": "R\u00f6yksopp - 49 Percent",
"resource_url": "http://api.discogs.com/masters/30161",
"type": "master",
"id": 30161
}
1 ответ
Среда: Windows 7, кодовая страница по умолчанию = 850, Python 2.7.3
Используя урезанную версию вашего ввода:
>>> import json
>>> js = """{
... "style": ["House", "Electro", "Synth-pop"],
... "title": "R\u00f6yksopp - 49 Percent",
... "id": 30161
... }"""
>>>
>>> j = json.loads(js)
>>> j
{u'style': [u'House', u'Electro', u'Synth-pop'], u'id': 30161, u'title': u'R\xf6yksopp - 49 Percent'}
>>> j['title']
u'R\xf6yksopp - 49 Percent'
>>> print j['title']
Röyksopp - 49 Percent
>>>