在 R 中使用弹出窗口从嵌入 google 地图中提取坐标

Extract coordinates from a embed google maps with popup in R

我想使用 R 网络抓取工具捕获这些坐标:

这就是我正在尝试的,只是处理页面中坐标所在的 xpath,但这样做 xpath 什么也抓不到。

html <- 'https://guiaempresas.universia.es/LOGISTICA-EGA.html'
x <- tryCatch(expr= {read_html(htmls)}, error=function(e){NA})
xpath <- '//*[@id="mapDiv"]/div/div/div[3]/div/div/div/div/div[1]/div[1]'
xx <- x %>% html_nodes(xpath = xpath)

这就是returns:

xx {xml_nodeset (0)}

在 R 中这样做的方法是什么?

您可以按如下方式轻松提取十进制值。然后使用像 celestial 这样的包根据需要在 dms 中格式化。

library(magrittr)
library(rvest)
library(celestial)

page <- read_html('https://guiaempresas.universia.es/LOGISTICA-EGA.html')

lat <- page %>% html_node('.latitude .value-title') %>% html_text() %>% as.numeric()
lon <- page %>% html_node('.longitude .value-title') %>% html_text() %>% as.numeric()

# https://rdrr.io/cran/celestial/man/deg2dms.html

print(deg2dms(lat, type='cat', sep='dms', digits=1))
print(deg2dms(lon, type='cat', sep='dms', digits=1))