复杂json串例如:
{
'status': 0,
'message': 'ok',
'total': 112,
'results': [{
'name': '***药店(北三环西路店)',
'location': {
'lat': 39.972296,
'lng': 116.347346
},
'address': '北京市海淀区北三环西路***',
'province': '北京市',
'city': '北京市',
'area': '海淀区',
'street_id': '',
'telephone': '(010)62197492,(010)62197490',
'detail': 1,
'uid': '9f97b1c5b614b81fb64f54ff'
}, {
'name': '***大药房(牡丹园店)',
'location': {
'lat': 39.98666,
'lng': 116.378951
},
'address': '北京市海淀区花园北路***',
'province': '北京市',
'city': '北京市',
'area': '海淀区',
'street_id': '69130523dcd1cd11725e8068',
'telephone': '(010)62384599',
'detail': 1,
'uid': '69130523dcd1cd11725e8068'
}]
}
Python解析代码如下:
import requests
import json
url = "http://api.map.baidu.com/place/v2/search?query=药房®ion=海淀区&output=json&ak=cnOqGWBsMTo7em70PP5sj2kpS2HZUYa1&page_num=1";# 请求地址
r = requests.get(url)# 发送get请求
print(r.json())# 获取需要解析的json数据
print(r.json()["total"])#显示112
items=json.loads(r.text)
dataList = items.get('results')
for item in dataList:
print(item["name"]+"="+item["address"])#获取药店名称和地址
运行结果为: