R 从多个唯一的 url 中抓取表格

R scrape tables from multiple, unique urls

我想从我在 excel sheet 的列中列出的多个唯一 URL 中抓取表格。我已经准备好从单个 url:

中抓取的正确代码
library(rvest)
library(tidyverse)
library(readxl)

onepage <- read_html("https://spd.gsd.state.nm.us/WebPortal/Modules/Procurement/Public/ProcurementsWebViewHistoricDetail.aspx?ID=geydyybpyy4yycey8rydyyboyysoycoygryn4yndybeyycoygwydnyy")

Procdetail <- onepage %>% html_element ("#ContentPlaceHolder1_divSoleSource.table.table-condensed.table-borderless") %>%
html_table ()

并且 Excel 和所有其他 URL 读入 R

 data <- read_excel("test.xlsx")
    urls <- (data$URL)

不幸的是,剩下的 URL 并不是相互排列的。相反,它们都有随机且独特的 url 结尾。下面是另外两个 URL 示例:

https://spd.gsd.state.nm.us/WebPortal/Modules/Procurement/Public/ProcurementsWebViewHistoricDetail.aspx?ID=grydyybpyy5yypoygwydyyboyysoycoygryn4ynfybgoyceygyydqyy https://spd.gsd.state.nm.us/WebPortal/Modules/Procurement/Public/ProcurementsWebViewHistoricDetail.aspx?ID=grydyybpyy5oyqeygwydyyboyysoycoygryn4yboyyayycoygoydqyy

关于如何从所有这些唯一的 URL 中自动抓取这些表格有什么建议吗?非常感谢!

您可以创建一个函数,然后通过 url 向量使用 lapply 到 运行。

read_my_urls <- function(url){

    onepage <- read_html(url)

     Procdetail <- onepage %>% html_element("#ContentPlaceHolder1_divSoleSource.table.table-condensed.table-borderless") %>%
html_table ()
 Procdetail
}

my_scraped_data <- lapply(data$urls, read_my_urls)