小编Ale*_*ius的帖子

在R中抓取html表及其href链接

我正在尝试下载一个包含文本和链接的表。我可以成功下载带有链接文本“ Pass”的表。但是,我想捕获实际的href URL,而不是文本。

library(dplyr)
library(rvest)
library(XML)
library(httr)
library(stringr)

link <- "http://www.qimedical.com/resources/method-suitability/"

qi_webpage <- read_html(link)

qi_table <- html_nodes(qi_webpage, 'table')
qi <- html_table(qi_table, header = TRUE)[[1]]
qi <- qi[,-1]
Run Code Online (Sandbox Code Playgroud)

上面给出了一个不错的数据框。但是,当我希望将链接与之关联时,最后一列仅包含文本“ Pass”。我尝试使用以下内容添加链接,但它们与正确的行不对应:

qi_get <- GET("http://www.qimedical.com/resources/method-suitability/")
qi_html <- htmlParse(content(qi_get, as="text"))

qi.urls <- xpathSApply(qi_html, "//*/td[7]/a", xmlAttrs, "href")
qi.urls <- qi.urls[1,]

qi <- mutate(qi, "MSTLink" = (ifelse(qi$`Study Protocol(click to download certification)` == "Pass", (t(qi.urls)), "")))
Run Code Online (Sandbox Code Playgroud)

我对html,css等知之甚少,所以我不确定要正确完成此操作我缺少什么。

谢谢!!

html xpath r rvest

2
推荐指数
1
解决办法
1289
查看次数

标签 统计

html ×1

r ×1

rvest ×1

xpath ×1