与大多数位置查询工作相反,我实际上是在尝试通过其地址或 Google 使用 Google API 来识别企业名称placeid
。例如,当我在 googlemaps.com 上搜索时 1625 Wilshire Blvd, Los Angeles, CA 90017
,它的结果显示“在这个位置”是“麦当劳”。
但是,当使用以下 URL 进行 API 调用时,名称显示为街道地址,而我想要识别该位置的企业名称(“麦当劳”):
https://maps.googleapis.com/maps/api/place/textsearch/json?query=1625%20Wilshire%20Blvd,%20Los%20Angeles,%20CA%2090017&sensor=false&key=<api_key>
编辑:使用@xomena 推荐的确切调用,我仍然遇到同样的问题。我已经同时运行了 R 和 Python,我得到的结果是街道地址代替了两种方式的名称。
代码:
packages <- c("RJSONIO")
new_packages <- packages[!(packages %in% installed.packages()[,"Package"])]
if(length(new_packages)) install.packages(new_packages)
library(RJSONIO)
fromJSON(URLencode(paste("https://maps.googleapis.com/maps/api/place/findplacefromtext/json?input=1625%20Wilshire%20Blvd%2C%20Los%20Angeles%2C%20CA%2090017&inputtype=textquery&fields=formatted_address,name,place_id&key=", api_key, sep = "")))
输出:
$candidates
$candidates[[1]]
formatted_address
"1625 Wilshire Blvd, Los Angeles, CA 90017, USA"
name
"1625 Wilshire Blvd"
place_id
"ChIJ18AW_aPHwoARXRm-cgcRcDs"
$debug_log
$debug_log$line
list()
$status
[1] "OK"
蟒蛇代码:
import requests
requests.get("https://maps.googleapis.com/maps/api/place/findplacefromtext/json?input=1625%20Wilshire%20Blvd%2C%20Los%20Angeles%2C%20CA%2090017&inputtype=textquery&fields=formatted_address,name,place_id&key="+API_KEY).json()
蟒蛇输出:
{'candidates': [{'formatted_address': '1625 Wilshire Blvd, Los Angeles, CA 90017, USA',
'name': '1625 Wilshire Blvd',
'place_id': 'ChIJ18AW_aPHwoARXRm-cgcRcDs'}],
'debug_log': {'line': []},
'status': 'OK'}