利用Python调用百度地图服务的地点检索Web API爬取某一市(区)的外国语学校

接口url如下:

http://api.map.baidu.com/place/v2/search?query=外国语学校®ion=南京市建邺区&output=json&ak=你的Key

ak获取的地方:http://lbsyun.baidu.com/apiconsole/key

地点检索的说明网址: http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-placeapi =》服务文档

代码如下:

import requests

import json 


#print("start")
token = "你的key"
url = 'http://api.map.baidu.com/place/v2/search?query=外国语学校®ion=南京市建邺区&output=json&ak='
r = requests.get(url +token )
#print("Status code:", r.status_code)
# Store API response in a variable.
response_dict = r.json()
with open('fig/searchschool.json' , 'w')  as f :
    json.dump( response_dict , f )

results =  response_dict["results"]
for school in  results  :
    loc =  school['location'] ;
    lat = str(loc['lat'])
    lng = str(loc['lng']) 
    print( school['name']+":" +  school['address']  + ":("  + lat + ","+ lng + ")" )

#print("end")

得到这样的结果:

南京致远外国语小学:建邺区月安街39号:(32.025211,118.738477)
南京河西外国语学校:江苏省南京市建邺区双闸福建正荣2013G63地块:(31.975573,118.706224)
南京外国语学校青奥村小学:江苏省南京市建邺区友谊街:(31.992002,118.710194)
南京外国语学校河西初级中学:江苏省南京市建邺区太清路佳兆业城市广场西侧:(31.974596,118.709095)
南京外国语学校青奥村小学(东北门):江苏省南京市建邺区青奥南路10:(31.992787,118.710164)

你可能感兴趣的:(python)