我有一个 Dataframe df,其中包含一列URL,我想从该列下载这些URL后面的PDF。
下面是df的dput()
:
structure(list(Name = c("Cran", "Beginners", "Split"), Ticker = c("CAR",
"BEG", "SPL"), URL = c("https://cran.r-project.org/doc/manuals/R-intro.pdf",
"https://cran.r-project.org/doc/contrib/Paradis-rdebuts_en.pdf",
"https://cran.r-project.org/web/packages/SPlit/SPlit.pdf")), class = "data.frame", row.names = c(NA,
-3L))
我想从URL列中的所有链接下载所有PDF,并以 Name_Ticker 的形式命名,例如第一个链接为Cran_CRA。
下载一个PDF文件,我一直在使用以下代码:
require(XML)
url <- ('https://cran.r-project.org/doc/manuals/R-intro.pdf')
download.file(url, 'Cran_CRA.pdf', mode="wb")
我如何修改这段代码,使其循环遍历URL列,下载所有PDF并根据上面的示例命名它们?
此外,我如何“跳过”PDF-URL不起作用或URL错误的链接?
编辑:这是实际 Dataframe 的head()
Name Ticker URL
<chr> <chr> <chr>
1 Dash 2 Trade D2T https://dash2trade.com/assets/documents/Whitepaper.pdf
2 Calvaira RIA https://whitepaper.calvaria.io/?utm_source=coincodex&utm_medium=referral
3 Flow FLOW https://www.onflow.org/technical-paper?utm_source=coincodex&utm_medium=referral
4 Cosmos ATOM https://cosmos.network/resources/whitepaper?utm_source=coincodex&utm_medium=referral
5 CUDOS Token CUDOS NA
6 P2P solutions foundation P2PS https://www.p2psf.org//wp-content/uploads/2017/12/P2PS_Whitepaper_V1.1_English.pdf?utm_source=coincodex&utm_medium=referral
1条答案
按热度按时间bnl4lu3b1#
我们可以使用
lapply
来迭代 Dataframe 的长度,download.file
在那里。将
if
语句与RCurl::url.exists
配合使用,以检查url的有效性。