📅  最后修改于: 2023-12-03 15:30:45.907000             🧑  作者: Mango
FindPlaceFromText 是 Google Maps API 中的一种地理编码服务,可以根据用户提供的文本查找特定地点的信息,例如餐馆、酒店、公园等。
这个 API 可以根据设定的搜索范围和文本输入,返回特定业务的候选 POI(点 of Interest)。而开发者可以通过 API 获得每个地点的详细信息,例如地点的名称、地址、经纬度坐标、业务类型、评分等等。
import requests
url = 'https://maps.googleapis.com/maps/api/place/findplacefromtext/json'
parameters = {
'input': 'the name of the place you want to find',
'inputtype': 'textquery',
'fields': 'formatted_address,name,place_id,geometry,types',
'locationbias': 'circle:5000@40.712776,-74.005974', # 设置变量范围
'key': 'Your_API_Key'
}
response = requests.get(url, params=parameters)
| 参数 | 类型 | 必填 | 描述 | | --- | --- | --- | --- | | input | string | yes | 要查找的地点的名称 | | inputtype | string | yes | 指定输入的类型。目前只支持 "textquery" | | fields | string | yes | 指定返回的地点信息 | | locationbias | string | no | 搜索设置的变量范围(半径以及坐标)| | key | string | yes | 用于身份验证的 API 密钥 |
candidates
数组包含了所有候选的地点。{
"candidates" : [
{
"formatted_address" : "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
"geometry" : {
"location" : {
"lat" : 37.4224764,
"lng" : -122.0842499
},
"viewport" : {
"northeast" : {
"lat" : 37.4238253802915,
"lng" : -122.0829009197085
},
"southwest" : {
"lat" : 37.4211274197085,
"lng" : -122.0855988802915
}
}
},
"name" : "Google",
"place_id" : "ChIJZa6ezJa2j4AR1p1nTSaRtuQ",
"types" : [ "point_of_interest", "establishment" ]
}
],
"status" : "OK"
}
| 参数 | 类型 | 描述 | | --- | --- | --- | | formatted_address | string | 地点的完整地址 | | geometry/location/lat | float | 地点所在纬度 | | geometry/location/lng | float | 地点所在经度 | | name | string | 地点名称 | | place_id | string | 地点 ID | | types | array of strings | 地点类别 |
locationbias
可用于设置特定区域的搜索范围,优化 API 返回结果。