【问题标题】:Download files from a FTP site requiring credentials using R使用 R 从需要凭据的 FTP 站点下载文件
【发布时间】:2017-08-17 12:27:18
【问题描述】:

我正在尝试从需要凭据的 FTP 站点下载一些 zip 文件。我能够使用 RCurl pacakge 中的 getURL 函数从站点获取文件列表。这是我使用的代码(来自一个旧的 stackoverflow 问题的答案)。

library(RCurl)
url<-"ftp://ftp.mysite.com/EOD/"
userpwd<-"name:password"
filenames <- getURL(url, userpwd = userpwd,
                    ftp.use.epsv = FALSE,dirlistonly = TRUE)
filenames<-strsplit(filenames, "\r\n")

我尝试了几种功能(downloadFile、download.file、getURL 等)将这些文件下载到我计算机上的本地目录,但是,我不断收到以下错误-

Error in download.file(url, destfile = pathnameT, mode = mode, quiet = !isVisible(verbose),  : 
  cannot open URL 'ftp://ftp.mysite.com/EOD/testfile_txt.zip'
In addition: Warning message:
In download.file(url, destfile = pathnameT, mode = mode, quiet = !isVisible(verbose),  :
  InternetOpenUrl failed: 'The login request was denied

阅读有关此错误的信息后,我尝试了两件事- 1.在downloadFile函数中指定setInternet2(use=TRUE);和 2. 在全局工具 > 包中取消勾选“使用 Internet Explorer library/proxy for HTTP”。

如果有人可以帮助我使用 R 将这些压缩文件下载到本地目录,我将不胜感激。谢谢。

【问题讨论】:

    标签: r ftp


    【解决方案1】:

    有趣。我将参数 ftp.use.epsv = FALSE 更改为 ftp.use.epsv = TRUE 并且工作正常。

    另一个使响应更有条理的变化:

    来自filenames&lt;-strsplit(filenames, "\r\n")

    收件人:filenames&lt;-strsplit(filenames, "\n")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多