【问题标题】:R rvest retrieve empty tableR rvest 检索空表
【发布时间】:2019-11-03 21:52:32
【问题描述】:

我正在尝试两种策略从网络表中获取数据:

library(tidyverse)  
library(rvest)                        

webpage <- read_html('https://markets.cboe.com/us/equities/market_statistics/book/')
data <- html_table(webpage, fill=TRUE)
data[[2]]

''

library("httr")
library("XML")

URL <- 'https://markets.cboe.com/us/equities/market_statistics/book/'
temp <- tempfile(fileext = ".html")
GET(url = URL, user_agent("Mozilla/5.0"), write_disk(temp))

df <- readHTMLTable(temp)
df <- df[[2]]

他们都返回一个空表。

【问题讨论】:

    标签: r web-scraping rvest


    【解决方案1】:

    值是在刷新 url 时从另一个端点动态检索的,您可以在网络选项卡中找到。您需要为服务器添加一个referer header,以返回包含表数据的json。

    library(httr)
    
    headers = c('Referer'='https://markets.cboe.com/us/equities/market_statistics/book/')
    d <- content(httr::GET('https://markets.cboe.com/json/bzx/book/FIT', httr::add_headers(.headers=headers)))
    print(d$data)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-13
      • 1970-01-01
      • 2020-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多