You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询指定经纬度位置是否有餐厅?支持哪些平台?

嘿,这个问题我太熟悉了!咱们来好好捋一捋:

一、判断经纬度位置是否存在餐厅的核心逻辑

本质上就是通过地理POI(兴趣点)检索API,传入目标经纬度,限定检索范围和餐饮类别的筛选条件,然后看返回的结果列表是否非空——如果有结果,就说明该位置周边存在餐厅,还能直接提取具体的餐厅信息(比如你示例里的Meii Sushi)。

二、主流平台的可行性及实现思路

你提到的这几个平台都完全能实现需求,具体操作方式各有特点:

1. Google Places API(最推荐的选择之一)

作为Google Maps生态里专门做POI检索的工具,它对餐厅这类POI的覆盖非常全面,接口也很易用。

  • 核心接口:Nearby Search API
  • 关键参数设置:
    • location:直接传入你的经纬度对1.280634,103.845392
    • radius:设置检索半径(比如500米,可根据需求调整范围)
    • type:指定为restaurant(也可以用更宽泛的food类别)
  • 效果:调用后会返回包含餐厅名称、地址、评分、营业时间的JSON结果,你要的Meii Sushi就会出现在结果列表里。
  • 注意:需要申请API密钥,有免费额度,超出后按调用量收费。

2. Google Maps API

其实Google Maps API也能实现,但更推荐用上面的Places API——因为Maps API更偏向地图渲染,POI检索只是附加功能,步骤会比Places API繁琐一些,效率没那么高。

3. Yelp Fusion API

Yelp的优势在于餐厅的用户评论和口碑数据非常详细,适合需要参考食客评价的场景。

  • 核心接口:Business Search API
  • 关键参数:
    • latitude/longitude:分别传入1.280634和103.845392
    • categories:设置为restaurants
    • radius:控制检索范围(单位是米,最大支持40000米)

4. Foursquare Places API

Foursquare的POI数据更新很及时,在欧美和东南亚地区的覆盖度不错,适合需要精准位置信息的场景。

  • 核心接口:Places Search API(或Explore API)
  • 关键参数:
    • ll:传入经纬度1.280634,103.845392
    • query:可设为restaurant,或者用categories指定餐饮类别
    • radius:自定义检索范围
三、简单实现示例(以Google Places为例)

用Python调用的话,代码结构大概是这样的:

import requests

# 替换成你的Google Places API密钥
API_KEY = "your_api_key_here"
target_location = "1.280634,103.845392"
search_radius = 500
search_type = "restaurant"

api_url = f"https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={target_location}&radius={search_radius}&type={search_type}&key={API_KEY}"

response = requests.get(api_url)
search_results = response.json().get("results", [])

if search_results:
    # 提取第一个匹配的餐厅名称
    first_restaurant = search_results[0]["name"]
    print(f"找到周边餐厅:{first_restaurant}")  # 示例输出:Meii Sushi
else:
    print("该位置周边未找到餐厅")

内容的提问来源于stack exchange,提问作者hemanth.b

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:31:24