使用 R 从网站上抓取数据的问题

Issues with scraping data off a website using R

我正在尝试使用 rvest 包从该网站抓取数据。

https://www.footballdb.com/games/index.html?lg=NFL&yr=2021

但是当我 运行 我的代码时,我遇到了一个我认识的错误。我不确定我是否没有使用正确的 html class.

这是我检查元素时看到的 html

这是我的代码 #下载数据 - 2021 年时间表

library(rvest)
url <- "https://www.footballdb.com/games/index.html?lg=NFL&yr=2021"
data <- url %>%
  html_nodes("statistics") %>%
  html_table()

我在使用您的代码时遇到错误 403,它可能使用了不正确的用户代理,或者网站认为 rvest 调用是机器人程序。

因此使用 httr 包 来设置用户代理,下面的内容适用于您的 url.

library(httr)
library(rvest)

tmp_user_agent<- 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/601.3.9 (KHTML, like Gecko) Version/9.0.2 Safari/601.3.9'
page_response <- GET(url, user_agent(tmp_user_agent))
df_lists<-page_response%>%
  read_html() %>% 
  html_nodes(".statistics") %>% #classes are queries with dot
  html_table()

df_lists[1] # 2,3,4.....

但建议在进行任何大规模操作或获取数据用于任何商业用途之前检查网站是否允许抓取。