2015-01-30 3 views
-2

У меня есть этот JSON-файл, который нужен мне для геолокации:Как разборе JSON в Python

Вот как это выглядит:

{ 
"status": "success", 
"country": "COUNTRY", 
"countryCode": "COUNTRY CODE", 
"region": "REGION CODE", 
"regionName": "REGION NAME", 
"city": "CITY", 
"zip": "ZIP CODE", 
"lat": LATITUDE, 
"lon": LONGITUDE, 
"timezone": "TIME ZONE", 
"isp": "ISP NAME", 
"org": "ORGANIZATION NAME", 
"as": "AS NUMBER/NAME", 
"query": "IP ADDRESS USED FOR QUERY" 

}

На самом деле, вот как это выглядит когда я отправляю запрос GET:

{"as":"AS7922 Comcast Cable Communications, Inc.","city":"Baltimore","country":"United States","countryCode":"US","isp":"Comcast Cable","lat":39.3281,"lon":-76.6385,"org":"Comcast Cable","query":"69.138.1.254","region":"MD","regionName":"Maryland","status":"success","timezone":"America/New_York","zip":"21211"} 

Как я могу разобрать эти данные на Python? Для вывода и печати.

Спасибо! (Извините, если это может быть дубликат, я не могу найти что-нибудь здесь, что помогает мне)

+0

https://docs.python.org/3/library/json.html#module-json – Chris

+1

http://stackoverflow.com/questions/23658123/how-to-get- дубликат из-за [in-a-string-use-regex-between-the-condition-in-python –

+0

] [значения Parsing из файла JSON в Python] (http://stackoverflow.com/questions/2835559/parsing -values-from-a-json-file-in-python) – davidism

ответ

0

Вы можете сделать это легко в Python с помощью модуля json. Посмотрите пример:

#!/usr/bin/env python3 

import json 


response = {"as":"AS7922 Comcast Cable Communications, Inc.","city":"Baltimore","country":"United States","countryCode":"US","isp":"Comcast Cable","lat":39.3281,"lon":-76.6385,"org":"Comcast Cable","query":"69.138.1.254","region":"MD","regionName":"Maryland","status":"success","timezone":"America/New_York","zip":"21211"} 

data_str = json.dumps(response) # serialize object in JSON format string 

data = json.loads(data_str) # deserialize JSON string to Python object 

print ('{} \n'.format(data_str)) 
print ('{} \n'.format(data)) 


# show all itens 
for key in response: 
    print ('{} -> {}'.format(key, response[key])) 

print ('#' * 100) 

for key in data: 
    print ('{} -> {}'.format(key, data[key])) 
+0

благодарю вас за это! –

+0

Добро пожаловать! –