【发布时间】:2020-12-11 19:50:00
【问题描述】:
对于一个附带项目,我正在尝试收集与梦幻足球相关的 NFL 球员的统计数据。我找到了一个包含我想要的数据的 URL: https://www.cbssports.com/fantasy/football/stats/QB/2020/ytd/stats/ppr/
我试图在 R 中抓取它,但没有运气。我已经尝试了很多东西,我得到的最接近的是:
Test1 <- read_html("https://www.cbssports.com/fantasy/football/stats/QB/2020/season/projections/ppr/") %>% html_nodes('.TableBase-bodyTr')
这是我目前得到的代码,结果如下:
Test1
{xml_nodeset (69)}
[1] <tr class="TableBase-bodyTr">\n<td class="TableBase-bodyTd \n \n \n \n ">\n <span class="CellPlayerName--sho ...
[2] <tr class="TableBase-bodyTr">\n<td class="TableBase-bodyTd \n \n \n \n ">\n <span class="CellPlayerName--sho ...
[3] <tr class="TableBase-bodyTr">\n<td class="TableBase-bodyTd \n \n \n \n ">\n <span class="CellPlayerName--sho ...
[4] <tr class="TableBase-bodyTr">\n<td class="TableBase-bodyTd \n \n \n \n ">\n <span class="CellPlayerName--sho ...
我尝试将其输入 html_text() 并得到以下结果:
[65] "\n \n \n \n \n \n J. Eason\n \n \n \n QB\n \n \n \n IND\n \n \n \n \n \n \n \n
这只是其中嵌入了相关信息的纯粹混乱。我也尝试在上面使用 html_table() ,但出现错误。
现在,如果我在“Test1”上使用 View 功能,我可以钻取多层数据并找到我正在寻找的内容,但我想要弄清楚的是如何直接获取这些数据。
我不确定从这里去哪里。如果有人能给我一些指点,我将不胜感激。我对 HTML 的熟悉程度非常低,我正在尝试阅读更多关于它的内容并理解,但是通过检查页面我能够收集到的是数据存储在“TableBase-bodyTr”类中,这就是为什么我指向那里的节点。
【问题讨论】:
标签: r web-scraping rvest