【问题标题】:Quantmod Error 'cannot open URL'Quantmod 错误“无法打开 URL”
【发布时间】:2015-09-20 04:28:45
【问题描述】:

我今天开始在使用 quantmod 软件包时遇到错误。其他人在运行此代码(或一般请求符号)时遇到相同的错误?

library(quantmod) getSymbols("CPIAUCNS",src="FRED")

错误:
Error in download.file(paste(FRED.URL, "/", Symbols[[i]], "/", "downloaddata/", : cannot open URL 'http://research.stlouisfed.org/fred2/series/CPIAUCNS/downloaddata/CPIAUCNS.csv'

URL 本身可以正常工作。

【问题讨论】:

  • 请显示您的循环生成的实际 URL。
  • 通过 url 我的意思是 http://research.stlouisfed.org/fred2/series/CPIAUCNS/downloaddata/CPIAUCNS.csv 错误生成。如果将其插入浏览器,则会下载一个 csv 文件。
  • 我遇到了同样的问题。也许弗雷德改变了什么?例如,我对雅虎没有任何问题
  • @chandler 感谢您的回复。我遇到了同样的问题。很高兴我并不孤单。
  • 它适用于我:'0.4.4' 版本。

标签: r quantmod


【解决方案1】:

假设您信任 FRED 的 SSL 证书,这是适用于我的解决方案。

您需要做的就是在执行 getSymbols 之前添加以下额外的代码行:

options(download.file.method = "wget", download.file.extra = c("--no-check-certificate"))

例子:

getSymbols("M2", from = start_date, to = end_date, src = "FRED")

[1]“M2”

str(M2)

1980-11-03/2015-10-05 上的“xts”对象包含: 数据:num [1:1823, 1] 1591 1593 1596 1597 1596 ... - attr(*, "dimnames")=2 个列表 ..$ : 空 ..$ : 字符 "M2" 按类对象索引:[日期] TZ:UTC xts 属性:
2名单 $ src : chr "弗雷德" $更新:POSIXct[1:1],格式:“2015-10-21 11:01:39”

【讨论】:

    【解决方案2】:

    另一个(临时)解决方案是在实际的getSymbols 脚本之前调用以下之一:

    options(download.file.method="libcurl")

    options(download.file.method="wget")

    options(download.file.method="wininet")

    第一个选项适合我(在 Mac 上)。
    感谢来自Rmetrics 的 Paul Gilbert(底部帖子)

    【讨论】:

      【解决方案3】:

      FRED 将 URL 方案从 http:// 更改为 https://。我正在努力确定一个适用于所有平台的补丁。如果设置了--internet2,当前代码在 Windows 上仍然适用于我。

      在 unix-likes 上,一种可能的解决方案是在 getSymbols.FRED 中的 download.file 调用中添加 method="curl"method="wget"

      【讨论】:

      • 在 windows 上添加:setInternet2(use = TRUE) before getSymbols("CPIAUCNS",src="FRED")
      【解决方案4】:

      问题昨天出现了:
      Cannot verify certificate for stlouisfed.org issued by GoDaddy.

      解决方法:

      temp = tempfile()

      download.file(url="http://research.stlouisfed.org/fred2/series/DAAA/downloaddata/CPIAUCNS.csv",destfile=temp, method="libcurl")

      result <- read.csv(temp,na.string=".")

      我希望必须使用此修复程序是暂时的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-01-03
        • 1970-01-01
        • 2012-04-16
        • 1970-01-01
        • 1970-01-01
        • 2011-05-01
        • 2013-02-18
        • 1970-01-01
        相关资源
        最近更新 更多