如何从 URL 列表中抓取和下载 pdf 并根据其他分类变量命名它们?

问题描述 投票:0回答:1

我有一个 URL 列表,可以在线打开 pdf 文件报告。我已经可以下载这些 pdf 并将它们保存在我的保管箱中。但是,我想保存它们而不是通用名称,而是考虑变量,例如年份和文件管理器名称的前 2 个字母。我的数据库有 1000 多个观察值。

我将前 46 个 pdf 保存为:

document_1.pdf document_2.pdf document_3.pdf

但是,我想另存为:

2014_Jo.pdf 2018_Pa.pdf 2019_Pe.pdf

我的数据库有下面这个框架:

` 姓名 网址
约翰 2014 https://contributions.electionsbc.gov.bc.ca/pcs/lepublished/100126233.pdf
保罗 2018 https://contributions.electionsbc.gov.bc.ca/pcs/lepublished/100122323.pdf

`

我可以使用下面的代码下载 pdf。但是此代码不会根据变量名称更改名称。

    `my_urls <- c(database$URL) 
     save_here <- paste0("document_", 1:46, ".pdf")
     mapply(download.file, my_urls, save_here)`
r web-scraping rvest
1个回答
0
投票

你很接近。

library(stringr)

my_urls <- database$URL
save_here <- paste0(database$Year,"_", str_sub(database$Name,1,2), ".pdf")
mapply(download.file, my_urls, save_here)

请注意,这将保存在您当前正在使用的任何目录中。如果您想要一个不同的目录,则需要在

paste0
中包含路径。例如,
paste0("C:\Users\b\docs\data\", database$Year, ...)
.

© www.soinside.com 2019 - 2024. All rights reserved.