使用 R 在 iframe 中抓取数据 HTML table
Scrape data HTML table in iframe using R
我正在尝试从这个 link 中抓取以下内容 table:
https://www.price.moc.go.th/en/home_en
使用 rvest
以下内容不起作用,但我不知道要更改什么:
阅读html代码
html <- read_html("https://www.price.moc.go.th/en/home_en")
进入特定的 css 选择器
check <- html %>%
html_nodes("#cpi_index > td:nth-child(2)") %>%
html_text()
enter image description here
所需的 table 在 iframe
中,其中有 link、
https://www.price.moc.go.th/price_index/index_price01.html
您需要 RSelenium
才能获得 table。
url = 'https://www.price.moc.go.th/price_index/index_price01.html'
#start the browser
library(RSelenium)
library(rvest)
library(dplyr)
driver = rsDriver(browser = c("firefox"))
remDr <- driver[["client"]]
remDr$navigate(url)
#get table
df = remDr$getPageSource()[[1]] %>%
read_html() %>%
html_table()
df[[1]]
# A tibble: 4 x 5
INDEX `Nov 21` `M/M` `Y/Y` `A/A`
<chr> <dbl> <dbl> <dbl> <dbl>
1 CPI 102. 0.28 2.71 1.15
2 CORE-CPI 101. 0.09 0.29 0.23
3 PPI 106. 1.2 8.5 4.4
4 CMI 116 0.5 10.4 7.9
我正在尝试从这个 link 中抓取以下内容 table:
https://www.price.moc.go.th/en/home_en
使用 rvest
以下内容不起作用,但我不知道要更改什么:
阅读html代码
html <- read_html("https://www.price.moc.go.th/en/home_en")
进入特定的 css 选择器
check <- html %>%
html_nodes("#cpi_index > td:nth-child(2)") %>%
html_text()
enter image description here
所需的 table 在 iframe
中,其中有 link、
https://www.price.moc.go.th/price_index/index_price01.html
您需要 RSelenium
才能获得 table。
url = 'https://www.price.moc.go.th/price_index/index_price01.html'
#start the browser
library(RSelenium)
library(rvest)
library(dplyr)
driver = rsDriver(browser = c("firefox"))
remDr <- driver[["client"]]
remDr$navigate(url)
#get table
df = remDr$getPageSource()[[1]] %>%
read_html() %>%
html_table()
df[[1]]
# A tibble: 4 x 5
INDEX `Nov 21` `M/M` `Y/Y` `A/A`
<chr> <dbl> <dbl> <dbl> <dbl>
1 CPI 102. 0.28 2.71 1.15
2 CORE-CPI 101. 0.09 0.29 0.23
3 PPI 106. 1.2 8.5 4.4
4 CMI 116 0.5 10.4 7.9