使用rvest包跨多个页面从多个表中抓取内容
我对R和rvest软件包非常陌生,我正在尝试跨多个页面从多个表中提取数据 一个例子是每场比赛的方块分数: 我尝试了以下方法从一个表中获取数据:使用rvest包跨多个页面从多个表中抓取内容,r,web-scraping,rvest,R,Web Scraping,Rvest,我对R和rvest软件包非常陌生,我正在尝试跨多个页面从多个表中提取数据 一个例子是每场比赛的方块分数: 我尝试了以下方法从一个表中获取数据: library(rvest) webpage <- read_html("https://www.pro-football-reference.com/boxscores/201309050den.htm") tbls <- html_nodes(webpage, "table") head(t
library(rvest)
webpage <- read_html("https://www.pro-football-reference.com/boxscores/201309050den.htm")
tbls <- html_nodes(webpage, "table")
head(tbls)
tbls_ls <- webpage %>%
html_nodes("table") %>%
.[3:3] %>%
html_table(fill = TRUE)
str(tbls_ls)
但这只是一场比赛的一张桌子
我试着在每年的每个星期里浏览每个boxscore的所有页面
所有页面都以URL的这一部分开头:
但是我需要循环一年中的所有日期,例如:
201309050
201309080
和小组:
den
buf
(这将是NFL的全部32支球队)
上述两个示例将指向以下两个URL:
https://www.pro-football-reference.com/boxscores/201309050den.htm
https://www.pro-football-reference.com/boxscores/201309080buf.htm
如果我有一个日期向量和一个团队向量,有没有一种方法可以循环检查每个组合,并从每个页面的表中返回信息
或者我可以使用开始日期和结束日期,并以某种方式使用每个团队名称遍历范围内的每个日期吗
开始日期是
20130901
20140301
结束日期为
20130901
20140301
(2013赛季)。将有更多的赛季要经历,理想的情况是2010-2019年
理想情况下,我希望循环一年中的每个日期和每个团队,如果返回记录,我希望将它们全部添加到一个表中,如下所示:
Year Week Player Team Cmp Att Yds TD Int Sk Yds Lng Rate Att Yds TD Lng Tht Rec Yds TD Lng Fmb FL
最好只返回每个四分卫的记录,尽管我不知道如何才能做到这一点。您可以使用
lapply(tbls,html\u table,fill=TRUE)获取列表中的所有表格。
这是否提供了跨多页的所有表格?我想它只能从一页开始工作?你还需要什么其他页?你有URL的向量吗?您也可以对这些值进行lappy
,以上是一场比赛的一个方块分数。我需要为每个游戏每周多页。我不确定如何使用URL的矢量?也许这对以下部分有帮助:或这:。这将有助于编辑该问题,以明确编程问题是什么。如果这个问题仅仅是关于如何将数据存储在外部网站上,那么这并不是真正的主题。