使用 tidygeocoder 和 OSM/Nominatim 进行反向地理编码:如何获得拉丁语 letters/English 的结果?

reverse geocodoing with tidygeocoder and OSM/Nominatim: How to get results in latin letters/English?

我是反向地理编码坐标,它与使用西里尔字母的国家/地区的地址有关。我使用 tidygeocoderOSM/Nominatim 作为方法。我如何修改我在 tidygeocoder 中的请求,使 results/addresses 不是西里尔字母而是拉丁字母 letters/in 英语?

据我所知,Nominatim/OSM API 中的相关 属性 是 accept-language(参见 here and here)。但是将它添加到 tidygeocoder 请求似乎不起作用。

library(tidygeocoder)
library(tidyverse)

df_res <- tibble(
  lat=41.992073,
  long=21.429506
) %>% 
  reverse_geocode(.,
                  lat=lat,
                  long=long,
                  address="address",
                  method="osm") 

结果地址读作

Шпаркасе, Македонија, Водно, Центар, Скопје, Општина Центар, Град Скопје, Скопски СР, 1111, Северна Македонија

将请求修改为(按照建议here):

tibble(
  lat=41.992073,
  long=21.429506
) %>% 
  reverse_geocode(.,
                  lat=lat,
                  long=long,
                  address="address",
                  method="osm",
                  api_options = list(osm_accept_language="en")
  ) 

导致错误:

Error: Invalid parameter "osm_accept_language" used in the api_options argument. See ?reverse_geo

有什么帮助吗?使用“osm_accept-language”时也会出现该错误。非常感谢!

感谢包作者在 github 上的 reply 我找到了答案:

df_res <- tibble(
  lat=41.992073,
  long=21.429506
) %>% 
  reverse_geocode(.,
                  lat=lat,
                  long=long,
                  address="address",
                  method="osm",
                  custom_query  = list("accept-language"="en-US"))