参考:https://zhuanlan.zhihu.com/p/84912171
使用API前您需先申请Key,若无高德地图API账号需要先申请账号。
1. 申请网址
https://lbs.amap.com/api/webservice/guide/api/search
2. 申请key
注册成功后,点击头像->应用管理->创建应用->选择web应用->创建->复制key
3. 输入地名,返回地名类别,可根据你自己实际需要返回
import os
import requests
import math
import json
def request_url_get(url):
""" 请求url方法get方法 """
try:
r = requests.get(url=url, timeout=30)
if r.status_code == 200:
return r.text
return None
except RequestException:
print('请求url返回错误异常')
return None
def parse_json(content_json):
""" 解析json函数 """
result_json = json.loads(content_json)
return result_json
def request_api(url):
""" 请求高德api 解析json """
result = request_url_get(url)
result_json = parse_json(result)
return result_json
def run():
""" 运行函数 """
# keywords = "水产科学研究院"
keywords = "北京大学" #科教文化服务
keywords = "良乡医院" #医疗保健服务
keywords = "圣熙8号" #购物服务
# keywords = "中国航天" #公司企业
city = 'beijing'
# city = 'shanghai'
key = "此处填写第2步申请的key"
# key = "test"
offset = 20
index_url = f'https://restapi.amap.com/v3/place/text?keywords={keywords}&city={city}&' \
f'offset={offset}&page=1&key={key}&extensions=base'
index_result = request_api(index_url)
pages = math.ceil(int(index_result['count']) / offset) # 算出一共需要的总页数
for page in range(1, pages + 1):
url = f'https://restapi.amap.com/v3/place/text?keywords={keywords}&city={city}&' \
f'offset={offset}&page={page}&key={key}&extensions=base'
result = request_api(url)
print(result["pois"][0]["type"])
# page=1
# url = f'https://restapi.amap.com/v3/place/text?keywords={keywords}&city={city}&' \
# f'offset={offset}&page={page}&key={key}&extensions=base'
# result = request_api(url)
# print(result["pois"][0]["type"])
run()
4. 输出
C:\ProgramData\Anaconda3\envs\paddle\python.exe C:/AAA盘/工作/OCR/paddle/main.py
购物服务;商场;购物中心