R 中的 Gmapsdistance 包错误“您必须使用 API 密钥来验证对 Google Maps Platform API 的每个请求。”

问题描述 投票:0回答:2

有一个 R 脚本来运行一堆不同点的通勤时间和距离。 拥有一个已启用计费帐户的 Google API 密钥,每次运行并在第 262 行关闭。

尝试重构代码。 更新了API 在不同部分设置 API 密钥

到目前为止,代码运行完美,并且它正在与 google 建立连接,如 API 中所示。

emp_commute$CommuteTime[i] <- gmapsdistance(origin = emp_commute$HomeComplete[i],
                                            destination = emp_commute$WorkComplete[i],
                                            mode = "driving",
                                            key = "",
                                            arr_date = "2019-11-13",
                                            arr_time = emp_commute$ArrivalTime[i])$Time[1]

gmapsdistance 中的错误(origin = emp_commute$HomeComplete[i], 目的地 = emp_commute$WorkComplete[i], : Google API 返回 错误:您必须使用 API 密钥来验证每个请求 Google 地图平台 API。如需了解更多信息,请参阅 http://g.co/dev/maps-no-account

在谷歌上搜索了又搜索,只是想得到一些建议!

r google-maps google-maps-api-3 google-distancematrix-api
2个回答
0
投票

这个包对我来说没有问题。使用RStudio Cloud。这就是我所做的。

首先我安装了gmapsdistance

install.packages("gmapsdistance")

然后我使用 API 密钥(在

key=
参数中设置)运行以下代码:

library("gmapsdistance")

origin <- c("40.431478+-80.0505401", "33.7678359+-84.4906438")
destination <- c("43.0995629+-79.0437609", "41.7096483+-86.9093986")

results <- gmapsdistance(origin, destination, mode="driving", key="abcd", arr_date="2019-11-13", arr_time="09:00:00")

results

回复是:

$Time
                      or Time.43.0995629+-79.0437609 Time.41.7096483+-86.9093986
1  40.431478+-80.0505401                       13878                       23071
2 33.7678359+-84.4906438                       49402                       38351

[...]

使用

set.api.key("")
也效果很好。出于测试目的,我建议您尝试上面的确切步骤和代码。另请仔细检查以下内容:

  1. 您的项目已启用计费和距离矩阵 API(请参阅 Google 指南
  2. 您的
    origin
    destination
    arr_time
    值有效(请先尝试对它们进行硬编码)

希望这有帮助。


0
投票

我正在回复这个旧线程,以防它对任何人有帮助...我发现了问题,并且是在地址中有 # 的情况下(例如 123 Main St Apt #6)。如果您删除#6 公寓,使其位于主街 123 号,那么它就可以正常工作了

© www.soinside.com 2019 - 2024. All rights reserved.