R中的download.file()具有非零退出状态

Ren*_*007 13 r download

我试图在R 3.0.1(Windows 7)中下载文件:

    fileUrl <- "https://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD"
    download.file(fileUrl, destfile="./data/cameras.csv", method="curl")
Run Code Online (Sandbox Code Playgroud)

我检查了网址和我的互联网连接,他们似乎工作得很好.但是,我收到此消息:

    Warning message:  
    In download.file(fileUrl, destfile = "./data/cameras.csv", method = "curl") : 
    download had nonzero exit status
Run Code Online (Sandbox Code Playgroud)

在网上找不到任何帮助,有谁知道如何解决这个问题?

dic*_*koa 17

仍然不明白为什么删除method = "curl"不解决问题.

另一个解决方案是安装downloader包裹download.file,使下载过程更容易和跨平台(一个功能与所有操作系统相同的参数)

install.packages("downloader")
fileUrl <- "https://data.baltimorecity.gov/api/views/dz54-2aru
            /rows.csv?accessType=DOWNLOAD"

require(downloader)
download(fileUrl, "data/cameras.csv", mode = "wb")
Run Code Online (Sandbox Code Playgroud)

希望这次能奏效


nog*_*pes 9

@dickoa的答案可能有效,但我认为主要问题是你在https不必要地使用.我认为这有效:

# Note the http instead of https
file<-'http://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD'
read.csv(file)
Run Code Online (Sandbox Code Playgroud)

  • -1因为我认为这个答案并不能解决何时`https`是唯一可用的协议.纯粹的巧合是上面的CSV文件既可以在`http`和`https`上提供,但并非总是如此,这个答案并不一致. (3认同)