📜  我附近的快餐 (1)

📅  最后修改于: 2023-12-03 15:39:39.645000             🧑  作者: Mango

附近的快餐店查询程序

这是一个基于地理位置的快餐店查询程序,用户可以通过输入自己的位置或者通过定位来查询周围的快餐店。

用法
安装
pip install requests
pip install geopy
使用
from geopy.geocoders import Nominatim
import requests
import markdown

def get_nearby_fast_food(location):
    geolocator = Nominatim(user_agent="geoapiExercises")
    # 根据地址名称获取经纬度坐标
    location = geolocator.geocode(location)
    lat = location.latitude
    lon = location.longitude
    # 使用高德地图请求周围快餐店数据
    res = requests.get(f'https://restapi.amap.com/v3/place/around?key=您的高德地图key&location={lon},{lat}&keywords=快餐&types=050300&sortrule=distance')
    # 解析返回的数据
    data = res.json().get('pois')
    # 构造markdown格式的表格
    markdown_table = '| 序号 | 名称 | 地址 |\n| --- | --- | --- |\n'
    for i in range(len(data)):
        name = data[i].get('name')
        address = data[i].get('address')
        markdown_table += f"| {i+1} | {name} | {address} |\n"

    return markdown_table

location = '北京市海淀区中关村'
get_nearby_fast_food(location)
# output:
# '| 序号 | 名称 | 地址 |\n| --- | --- | --- |\n| 1 | 肯德基 | 北京市海淀区中关村大街22号伟东云国际购物中心B1层B1027号铺位 |\n| 2 | 麦当劳 | 北京市海淀区中关村大街20号新中关购物中心B1层CT0018 |\n| 3 | 德克士 | 北京市海淀区中关村大街银丰时代购物中心B1层B1241-1铺(近地铁) |'
说明

此程序使用高德地图API进行位置查询和周边搜索,需要申请API key,可以到高德开发者平台进行申请。

程序返回一个markdown格式的表格,包含了序号、名称和地址三列信息,用户可以根据实际需要将表格信息赋值到自己商业化的软件中,以满足用户的需求。