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)
我想从我在 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)