【问题标题】:Trying to extract the links of r packages using rvest尝试使用 rvest 提取 r 包的链接
【发布时间】:2018-11-19 00:25:54
【问题描述】:

我一直在尝试使用这个question 和这个tutorial 来获取available rpackages in cran 列表的表格和链接

获取html表格

我这样做是对的:

library(rvest)

page <- read_html("http://cran.r-project.org/web/packages/available_packages_by_name.html") %>% html_node("table") %>% html_table(fill = TRUE, header = FALSE)

试图获取链接

当我尝试获取链接时,我遇到了麻烦,我尝试将选择器小工具用于表的第一列(包链接)并且我得到了节点 td a,所以我尝试了这个:

test2 <- read_html("http://cran.r-project.org/web/packages/available_packages_by_name.html") %>% html_node("td a") %>%  html_attr("href") 

但我只获得了第一个链接,然后我想我可以从表格中获得所有 href 并尝试以下操作:

test3 <- read_html("http://cran.r-project.org/web/packages/available_packages_by_name.html") %>% html_node("table") %>%  html_attr("href") 

但是什么都没有,我做错了什么?

【问题讨论】:

    标签: r web-scraping rvest


    【解决方案1】:

    基本上,缺少一个“s”:使用html_nodes() 而不是html_node

    x <- 
      read_html(paste0(
        "http://cran.r-project.org/web/",
        "packages/available_packages_by_name.html")) 
    
    html_nodes(x, "td a") %>% 
      sapply(html_attr, "href")
    

    【讨论】:

      猜你喜欢
      • 2016-05-16
      • 1970-01-01
      • 2015-02-02
      • 1970-01-01
      • 2015-11-02
      • 2017-10-11
      • 1970-01-01
      • 2018-11-03
      • 2019-01-19
      相关资源
      最近更新 更多