我在从 ftp 服务器下载压缩文件时遇到问题。但是现在我已经解决了这个问题,因为我还没有在这里找到任何解决我的问题的方法,所以我正在分享我的方法。
首先我尝试了
download.file()
但是有一个问题,我的密码以“@”结尾。这就是 URL 中包含 submittign 用户和密码的解决方案不起作用的原因。双 @ 显然让 R 感到困惑。
url <- ftp://user:password@@url
您将在下面找到解决方案。
也许有人有一些改进。
也许对某人有用,
弗洛里安
最佳答案
这是我的解决方案:
library(RCurl)
url<- "ftp://adress/"
filenames <- getURL(url, userpwd="USER:PASSWORD", ftp.use.epsv = FALSE, dirlistonly = TRUE) #reading filenames from ftp-server
destnames <- filenames <- strsplit(filenames, "\r*\n")[[1]] # destfiles = origin file names
con <- getCurlHandle( ftp.use.epsv = FALSE, userpwd="USER:PASSWORD")
mapply(function(x,y) writeBin(getBinaryURL(x, curl = con, dirlistonly = FALSE), y), x = filenames, y = paste("C:\\temp\\",destnames, sep = "")) #writing all zipped files in one directory
希望对任何人都有用!
问候,
弗洛里安
关于r - 通过 RCurl 从 ftp 下载压缩文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22411833/