雅虎!财务 CSV 文件不会返回道琼斯 (^DJI)

Posted

技术标签:

【中文标题】雅虎!财务 CSV 文件不会返回道琼斯 (^DJI)【英文标题】:Yahoo! Finance CSV file will not return Dow Jones (^DJI) 【发布时间】:2011-04-10 10:35:45 【问题描述】:

我正在尝试从 Yahoo! 检索市场数据财务和脚本多年来一直运行良好,但最近,它停止显示道琼斯数据。这是网址:

http://download.finance.yahoo.com/d/quotes.csv?s=^DJI,^IXIC,^GSPC,^TNX&f=snl1d1t1c1ohg

URL 应返回以下数据:

道琼斯 纳斯达克 标准普尔 10 年期债券

它实际上并没有为我返回到 CSV,我已经尝试了我能想到的一切,但无济于事,而且我还没有看到任何人在网上遇到同样的问题。

有什么想法吗?有人遇到同样的问题吗?

谢谢。

【问题讨论】:

Yahoo! Help 说“如果您无法下载道琼斯工业平均指数的数据,那是因为雅虎不再获得为道琼斯指数提供数据下载的许可。此时,道琼斯工业平均 [^DJI] 数据只能在屏幕上查看。不能再下载。” 【参考方案1】:

我认为你最好联系Yahoo! Finance。因为他们了解他们的系统并且很可能能够提供帮助。

【讨论】:

让选民安静下来!你为什么联系一个知道发生了什么的地方是没有意义的。【参考方案2】:

将 ^DJI 替换为 INDU(这是道指的股票代码之一)- 会起作用。

不知道为什么 ^DJI 上周末停止工作 - 有人做了“负面增强”。

欢呼

GT

【讨论】:

@GT,很好!自八月下旬以来,我一直在寻找答案。 您还应该查看 YQL,这是访问此数据的新方法。你可以在这里找到一个例子:jarloo.com/tutorials/get-yahoo-finance-api-data-via-yql 谢谢伙计,这真的帮助了我:) 没有选项正在工作尝试了此页面上提到的所有选项【参考方案3】:

据雅虎报道:

http://developer.yahoo.net/forum/index.php?showtopic=6943

感谢您写信给 Yahoo!金融。 我了解到您报告无法下载 ^DJI 的 CSV 数据。我当然可以给你更多关于这方面的信息。 您遇到的限制是由于道琼斯指数的限制。雅虎!不再能够以这种方式提供道琼斯指数数据。对于造成的任何不便,我深表歉意。 如果我能提供进一步的帮助,请告诉我。 再次感谢您联系 Yahoo!金融。 问候, 布雷特 雅虎!金融客户服务

另一篇建议使用 INDU 的帖子似乎确实有效!...不知道雅虎(或道琼斯)是否只是错过了这篇文章,它最终会消失...

【讨论】:

非常感谢!这真的很有帮助。【参考方案4】:

我上周看到了这个......

http://webdesignsnow.com/forums/about125.html 描述更改以及在 csv 文件中看到的消息。

【讨论】:

【参考方案5】:

既然雅虎阻止了 INDU,您可以改用跟踪该指数的 ETF。我不认为他们会阻止它。

【讨论】:

【参考方案6】:

我知道这个问题已经回答了一段时间,但我最近遇到了这个 ^DJI 和 Yahoo!由于 Yahoo! 的另一项更改,报价再次出现问题!并提出了一个解决方案,可以帮助 OP 和通过搜索到达此页面的任何其他人。

作为背景知识,请注意有几个 URL 可用于从 Yahoo 下载历史报价数据。它们是:

1) http://download.finance.yahoo.com/d/quotes.csv

2) http://ichart.finance.yahoo.com/table.csv

3)http://finance.yahoo.com/q/hp

1) 是列出的 OP,2) 实际上是您在报价网页显示下方获得的“下载”链接,3) 是正常的历史报价网页 URL。

事实证明,虽然 1) 自 2011 年 8 月以来已被马里奥·费尔南德斯 (Mario Fernandez) 提到的 ^DJI 和其他一些人屏蔽,但 2) 实际上直到前几天仍在工作。我知道这一点是因为我一直在使用它并且它在大约一周前停止工作(事实证明)。顺便说一句,2) 的好处是它实际上允许您检索比通过 1) 或 3) 明显可用的数据更多的数据,例如,您可以使用方法 2) 检索一直到 1928 年的数据,但我离题了。无论如何,正如我所说,2) 最近也停止了工作,这让我对无法自动更新数据集/模型感到沮丧。

鉴于我实际上将 ^DJI 数据用于我的一些模型等,我今天最终花了一两个小时为普通报价页面(例如第 3 号)编写了一个页面抓取工具,该页面现在将直接从HTML 报价网页。这是在一个用 Python 编写的开源命令行下载器应用程序的上下文中,我在过去几个月里做了一些小工作。这是我目前用来定期刷新数据集的方法。有了最新的补丁,OP 和其他任何想下载^DJI 的人都有另一种可能的解决方案来根据需要下载^DJI。

如果您想尝试一下,则需要先下载并安装 Python(在 Windows 上。Linux 和 Mac 内置了 Python。)我建议使用 ActiveState 的 Python 发行版,可在此处获得:

http://www.activestate.com/activepython/downloads

请注意,他们要求提供注册详细信息,但这不是强制性的。您可以忽略单击其中一个下载链接后获得的注册页面。

然后你需要pyQ程序源。您可以从此处的项目页面获取此信息:

http://bazaar.launchpad.net/~wprins/python-pyq/trunk/view/head:/pyq.py

编辑 2016-10-20:代码现已在 github 上提供,并且也将在 Python 3 下运行:https://github.com/ByteJuggler/pyq

单击“下载”链接,并将脚本保存在合适的位置。然后打开命令提示符,“cd”到您下载脚本的文件夹,并尝试使用“pyq”运行脚本。假设已经安装了 Python,您应该会看到一个使用摘要。最简单的形式是这样的命令:

pyq IBM

将为 IBM 获取实时报价行。

类似:

pyq 20120601 20120701 IBM

... 将从 20120601 到 20120701 日期获取 IBM 的报价。等等。输出实际上是 CSV。如果要将输出保存到文件中,请照常重定向输出:

pyq 20120601 20120701 IBM >ibm.csv

无论如何,希望对某人有所帮助。 (我今天早些时候偶然发现了这个页面,试图弄清楚为什么我的 ^DJI 数据集从大约一周前开始就已经过时了,并决定在我想出一个解决方案时发回这里。)

编辑:请注意 ^DJI 您应该引用代码,例如:

pyq 20120601 20120701 "^DJI" >"^DJI.csv"

【讨论】:

【参考方案7】:

以下链接:http://finance.yahoo.com/q/hp?s=^DJI 将为您提供一些您感兴趣的信息(例如 Open、DaysHigh 和 DaysLow)。

此外,以下无效代码:

wget -qO ^DJI.csv "http://ichart.finance.yahoo.com/table.csv?s=^DJI"

可以用以下 hack 替换:

(echo "Date,Open,High,Low,Close,Volume,Adj Close"
for y in 0..7603..66; do # increase 7603 if necessary
  wget -qO- "http://finance.yahoo.com/q/hp?s=^DJI&y=$y" |
    sed 's/<\/\(td\|a\)>/\n/g' |
    grep yfnc_tabledata1 |
    sed -e 's/<.*>//g' -e 's/\([0-9]\),\([0-9]\)/\1\2/g' |
    grep -v ^$ |
    awk 'BEGIN m["Jan"]=1; m["Feb"]=2; m["Mar"]=3;
    m["Apr"]=4; m["May"]=5; m["Jun"]=6;
    m["Jul"]=7; m["Aug"]=8; m["Sep"]=9;
    m["Oct"]=10; m["Nov"]=11; m["Dec"]=12
    NR%7==1 printf "%d-%02d-%02d,",$3,m[$1],$2
    NR%7>1 printf "%s,",$0 NR%7==0'
done) > ^DJI.csv

这将生成一个表格,其中包含从 1985 年 1 月 29 日开始的 ^DJI 每日历史数据。

【讨论】:

【参考方案8】:

我使用 Google 财经获取自 Y 以来的数据!财务已经停止工作。尽管谷歌未来也可能会改变他们的政策。在这发生之前,我访问

http://finance.google.com/finance/info?lient=ig&q=INDEXDJX:.DJI&callback=?

这将返回一个 JSONP 文档。

【讨论】:

以上是关于雅虎!财务 CSV 文件不会返回道琼斯 (^DJI)的主要内容,如果未能解决你的问题,请参考以下文章

雅虎财经 API [关闭]

雅虎财经 API 错误 400 在亚洲

想通过使用BeautifulSoup从雅虎财务中检索股票公司名称

如何将抓取的 Web 数据保存到多个 csv 文件中

使用ggplot绘制时导入库存数据问题

雅虎今天突然终止了它的金融下载 API 吗?