file<-tempfile(fileext=".csv")
download.file(url="ftp://pubftp.spp.org/Markets/DA/LMP_By_SETTLEMENT_LOC/2014/03/28/DA-LMP-SL-201403280100.csv",destfile=file,mode="wb")
这适用于R本身(我不知道该怎么称呼它)。但是在RStudio中,它会挂起几分钟,然后我会得到以下内容
trying URL 'ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv'
using Synchronous WinInet calls
Error in download.file(url = "ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv", :
cannot open URL 'ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv'
In addition: Warning message:
In download.file(url = "ftp://pubftp.spp.org/Markets/RTBM/LMP_By_SETTLEMENT_LOC/2014/03/25/11/RTBM-LMP-SL-201403251015.csv", :
InternetOpenUrl failed: ''
这是一个小文件所以它不应该超时,但我真的不知道问题是什么。
答案 0 :(得分:3)
我找到了两个解决方案。
1)转到工具&gt;全局选项&gt;包,并取消选择“使用Internet Explorer库/代理进行HTTP”。
2)这适用于其他用户,但不适用于我:setInternet2(use = FALSE)
注意:在RGUI中我输入setInternet2(use = TRUE),然后尝试下载,它给出了“使用同步WinInet调用”消息并挂起;但随后Windows防火墙弹出,当我允许RGUI通过它时,下载开始了。
答案 1 :(得分:0)
我在RStudio的for循环中使用R的download.file有类似的问题。它将下载前几个链接的URL,然后我将获得“InternetOpenUrl失败:'操作超时'”以用于所有后续下载。我尝试了sssheridan的建议,取消选择无效的R全局选项中的Internet Explorer选项。我也尝试过setInternet2(use = T),但这在R中不再可用了。
对我来说有用的是通过在download.file中包含cacheOK = F
作为参数来删除缓存。我想这是因为我之前已经找到了超时的链接。
答案 2 :(得分:0)
转到工具>全局选项>软件包>取消选中“对HTTP使用安全下载方法”。
答案 3 :(得分:0)
使用时在RStudio中下载文件时遇到相同的问题
> source("http://www.statmethods.net/RiA/wmc.txt")
Error in file(filename, "r", encoding = encoding) :
cannot open the connection
In addition: Warning message:
In file(filename, "r", encoding = encoding) :
InternetOpenUrl failed: '安全频道支持出错'
然后我尝试
> options(download.file.method="libcurl", url.method="libcurl")
> source("http://www.statmethods.net/RiA/wmc.txt")
> wmc
有效
答案 4 :(得分:-5)
这有效!
文件&LT; - 'http://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD' download.file(file,destfile =“camera1.csv”)