Ich lief gerade in das gleiche Problem und fand Ihren Beitrag. Ich konnte dies umgehen, indem ich die Werte client
und signature
auf Dummy-Werte, z.
geocode(myLocations, client = "123", signature = "123", output = 'latlon', source = 'dsk')
Das Problem mit diesem Teil der geocode Funktion zu sein scheint ...
if (length(location) > 1) {
if (userType == "free") {
limit <- "2500"
}
else if (userType == "business") {
limit <- "100000"
}
s <- paste("google restricts requests to", limit, "requests a day for non-business use.")
if (length(location) > as.numeric(limit))
stop(s, call. = F)
userType
wird oben in diesem Teil des Codes ...
if (client != "" && signature != "") {
if (substr(client, 1, 4) != "gme-")
client <- paste("gme-", client, sep = "")
userType <- "business"
}
else if (client == "" && signature != "") {
stop("if signature argument is specified, client must be as well.",
call. = FALSE)
}
else if (client != "" && signature == "") {
stop("if client argument is specified, signature must be as well.",
call. = FALSE)
}
else {
userType <- "free"
}
So , wenn die Parameter client
und signature
leer sind userType
ist auf "frei" eingestellt und die Grenze ist wiederum auf 2.500 gesetzt. Wenn Sie Werte für diese Parameter angeben, werden Sie als "geschäftlicher" Benutzer mit einem Limit von 100.000 betrachtet. Dies ist ein guter Test, wenn angenommen wird, dass der Benutzer "Google" anstelle von "dsk" als Quelle verwendet, aber übereifrig ist, wenn die Quelle "dsk" ist und wahrscheinlich überschrieben werden sollte. Um einfältig vielleicht so etwas wie ...
if (source == "google") {
if (client != "" && signature != "") {
if (substr(client, 1, 4) != "gme-")
client <- paste("gme-", client, sep = "")
userType <- "business"
}
else if (client == "" && signature != "") {
stop("if signature argument is specified, client must be as well.",
call. = FALSE)
}
else if (client != "" && signature == "") {
stop("if client argument is specified, signature must be as well.",
call. = FALSE)
}
else {
userType <- "free"
}
} else {
userType <- "business"
}
, die Probleme verursachen würde, wenn client
oder signature
Parameter obwohl andere Quellen geplant waren. Ich werde den Paketautor anpingen.
Danke! Es funktioniert irgendwie, aber immer noch begrenzt. Der Grund dafür ist, dass die Verwendung von Dummy-Werten zwar das Limit von 2500 überschreitet, jetzt aber mit dem Limit von Google endet. Das ist 10.000: Fehler: google schränkt Anfragen auf 100000 Anfragen pro Tag für nicht-geschäftliche Zwecke ein. –