我一直在尝试从保存为 JavaScript 的网站中抓取轮询时间序列。到目前为止,一旦选择“圆形”节点,我最终会得到一个空列表。下面的代码,任何一点都非常感谢。library(rvest)library(V8)url = 'https://www.politico.eu/europe-poll-of-polls/belgium/'dta = read_html(url) %>% html_node('svg') %>% html_node('g') %>% html_node('circle')
1 回答
HUWWW
TA贡献1874条经验 获得超12个赞
其实很简单。数据来自您可以在网络选项卡中找到的 json 端点
library(jsonlite)
data <- jsonlite::read_json('https://www.politico.eu/wp-json/politico/v1/poll-of-polls/BE-parliament')
info <- data$polls
您可以转换为数据框。例如:
library(purrr)
df <- map_df(info, function(x) {
data.frame(date = x$`date`,
party = x$parties,
stringsAsFactors=FALSE)
})
names(df) <- gsub( 'party.','',names(df))
您始终可以转置并进行任何其他您想要的转换等,例如
df <- t(df)
- 1 回答
- 0 关注
- 70 浏览
添加回答
举报
0/150
提交
取消