Извините, я полностью забыл упомянуть, что я использую Python. Позвольте мне попробовать это снова.
Я использую Python для использования веб-службы, которая возвращает следующий JSON:
{
"results" : [
{
"paramName" : "output",
"dataType" : "GPString",
"value" : "{'city': 'Falls Church', 'isRuralArea': False, 'zip': '22046', 'isNotInBTOPLMArea': True, 'longitude': '-77.186180', 'isGeocodable': True, 'county': u'Falls Church', 'isNotInBIPLMArea': True, 'state': 'VA', 'isLatLongInUSBounds': True, 'address': '604 Jackson St', 'latitude': '38.884937'}"
}
],
"messages" : [
]
}
Вот важные фрагменты из моего кода извлечения / анализа:
import urllib
import httplib2
import json
import simplejson
http = httplib2.Http()
headers, response = http.request(url, 'GET')
if headers['status'] == "200":
responseAsJson = simplejson.loads(response)
print "response = " + repr(responseAsJson)
results = responseAsJson['results'][0]['value']
К сожалению, это оставляет мне следующее значение для результатов (как сообщается в окне «Переменные отладчика PyScripter»):
u"{'city': 'Falls Church', 'isRuralArea': False, 'zip': '22046', 'isNotInBTOPLMArea': True, 'longitude': '-77.186180', 'isGeocodable': True, 'county': u'Falls Church', 'isNotInBIPLMArea': True, 'state': 'VA', 'isLatLongInUSBounds': True, 'address': '604 Jackson St', 'latitude': '38.884937'}"
Я не знаю, как получить, например, ключи address или city .
Можете ли вы сказать, что я делаю неправильно, и как это исправить?
Спасибо,
Джейми
Старая версия моего вопроса (устарела):
Вот JSON, который я анализирую:
response = {u'messages': [], u'results': [{u'dataType': u'GPString', u'value': u"{'city': 'Falls Church', 'isRuralArea': False, 'zip': '22046', 'isNotInBTOPLMArea': True, 'longitude': '-77.186180', 'isGeocodable': True, 'county': u'Falls Church', 'isNotInBIPLMArea': True, 'state': 'VA', 'isLatLongInUSBounds': True, 'address': '604 Jackson St', 'latitude': '38.884937'}", u'paramName': u'output'}]}
Я углубился в этот узел, и его тип - "Юникод". Как мне из этого сделать дикт? Я думаю, что тот факт, что это Unicode мешает мне создать диктовку или получить доступ к ее ключам, но я не уверен.
u"{'city': 'Falls Church', 'isRuralArea': False, 'zip': '22046', 'isNotInBTOPLMArea': True, 'longitude': '-77.186180', 'isGeocodable': True, 'county': u'Falls Church', 'isNotInBIPLMArea': True, 'state': 'VA', 'isLatLongInUSBounds': True, 'address': '604 Jackson St', 'latitude': '38.884937'}"
Спасибо,
Джейми