使用 rvest R 抓取图像
Web Scrape an Image with rvest R
我在尝试从 this page 抓取图像时遇到问题。我的代码如下:
library(rvest)
url <- read_html("https://covid-19vis.cmm.uchile.cl/chart")
m <- '/html/body/div/div/div[4]/main/div/div/div/div/div/div[2]/div[1]'
grafico_cmm <- html_node(url, xpath = m) %>% html_attr('src')
当我运行上面的代码时,结果是NA。有人知道如何从页面中抓取情节或数据吗?
非常感谢
这不是图片,是交互式图表。对于图像,您需要抓取数据点并重新创建为图表,然后再转换为图像。 Xpath 也无效。
数据来自 API 调用。我根据图表检查了这些值,这是正确的端点。
library(jsonlite)
data <- jsonlite::read_json('https://covid-19vis.cmm.uchile.cl/api/data?scope=0&indicatorId=57', simplifyVector = T)
图表需要整理一下,但这里是 r 值的基本图:
data$date <- data$date %>% as.Date()
library("ggplot2")
ggplot(data=data,
aes(x=date, y=value, colour ='red')) +
geom_line() +
scale_color_discrete(name = "R Efectivo", labels = c("Chile"))
print tail(data)
我在尝试从 this page 抓取图像时遇到问题。我的代码如下:
library(rvest)
url <- read_html("https://covid-19vis.cmm.uchile.cl/chart")
m <- '/html/body/div/div/div[4]/main/div/div/div/div/div/div[2]/div[1]'
grafico_cmm <- html_node(url, xpath = m) %>% html_attr('src')
当我运行上面的代码时,结果是NA。有人知道如何从页面中抓取情节或数据吗?
非常感谢
这不是图片,是交互式图表。对于图像,您需要抓取数据点并重新创建为图表,然后再转换为图像。 Xpath 也无效。 数据来自 API 调用。我根据图表检查了这些值,这是正确的端点。
library(jsonlite)
data <- jsonlite::read_json('https://covid-19vis.cmm.uchile.cl/api/data?scope=0&indicatorId=57', simplifyVector = T)
图表需要整理一下,但这里是 r 值的基本图:
data$date <- data$date %>% as.Date()
library("ggplot2")
ggplot(data=data,
aes(x=date, y=value, colour ='red')) +
geom_line() +
scale_color_discrete(name = "R Efectivo", labels = c("Chile"))
print tail(data)