股票代码符号查找API


97

是否有仅提供简单符号查找服务的API?即输入公司名称,它会告诉您股票代码吗?我只尝试过对Google财经进行抓屏,但是过一会儿它限制了您的速度,您必须输入验证码。我正在尝试批量查找约2000个股票代码。有任何想法吗?


雅虎金融再好不过了?
诺多林

您需要在两次查询之间添加延迟。说5秒钟。
siamii


我最近对可用的交易API进行了评估。strategic-options.com/insight/...
乍得

这其中不正是你想要什么,它每天更新rapidapi.com/logicione/api/...
瓦特

Answers:


104

您可以像这样使用yahoo的符号查找:

http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=yahoo&callback=YAHOO.Finance.SymbolSuggest.ssCallback

查询是公司名称。

作为回报,您会得到如下信息:

YAHOO.Finance.SymbolSuggest.ssCallback(
{
    "ResultSet": {
        "Query": "ya",
        "Result": [
            {
                "symbol": "YHOO",
                "name": "Yahoo! Inc.",
                "exch": "NMS",
                "type": "S",
                "exchDisp": "NASDAQ"
            },
            {
                "symbol": "AUY",
                "name": "Yamana Gold, Inc.",
                "exch": "NYQ",
                "type": "S",
                "exchDisp": "NYSE"
            },
            {
                "symbol": "YZC",
                "name": "Yanzhou Coal Mining Co. Ltd.",
                "exch": "NYQ",
                "type": "S",
                "exchDisp": "NYSE"
            },
            {
                "symbol": "YRI.TO",
                "name": "YAMANA GOLD INC COM NPV",
                "exch": "TOR",
                "type": "S",
                "exchDisp": "Toronto"
            },
            {
                "symbol": "8046.TW",
                "name": "NAN YA PRINTED CIR TWD10",
                "exch": "TAI",
                "type": "S",
                "exchDisp": "Taiwan"
            },
            {
                "symbol": "600319.SS",
                "name": "WEIFANG YAXING CHE 'A'CNY1",
                "exch": "SHH",
                "type": "S",
                "exchDisp": "Shanghai"
            },
            {
                "symbol": "1991.HK",
                "name": "TA YANG GROUP",
                "exch": "HKG",
                "type": "S",
                "exchDisp": "Hong Kong"
            },
            {
                "symbol": "1303.TW",
                "name": "NAN YA PLASTIC TWD10",
                "exch": "TAI",
                "type": "S",
                "exchDisp": "Taiwan"
            },
            {
                "symbol": "0294.HK",
                "name": "YANGTZEKIANG",
                "exch": "HKG",
                "type": "S",
                "exchDisp": "Hong Kong"
            },
            {
                "symbol": "YAVY",
                "name": "Yadkin Valley Financial Corp.",
                "exch": "NMS",
                "type": "S",
                "exchDisp": "NASDAQ"
            }
        ]
    }
}
)

这是JSON,非常易于使用。

嘘...不要告诉任何人。


1
嘿可以在查询中使用野生字符吗?尝试%和*,但没有运气...
NightWolf 2011年

2
这将在JSON中最多返回10个结果!!!! 我们如何绕过仅10个结果的限制?
Sandy505

5
截至几天前,该解决方案似乎已失效。雅虎现在需要一个“区域”参数,并将其设置为“美国”没有任何区别。如果有人有解决方法,我很想听听!
wstr 2015年

6
好像他们添加了两个额外的参数,“区域”和“语言”。请尝试以下d.yimg.com/autoc.finance.yahoo.com/...
lancegoh

2
现在,它不再支持模糊搜索,它只能查找“精确”符号。:(是否有人有变通办法或任何隐藏的参数来打开模糊搜索功能?
Jonathan Chen

32

Google财经确实允许您使用以下URL一次检索多达100条股票报价:

www.google.com/finance/info?infotype=infoquoteall&q=[ticker1]、[ticker2]、...、[tickern]

例如:

www.google.com/finance/info?infotype=infoquoteall&q=C,JPM,AIG

有人在这里破译了可用字段:

http://qsb-mac.googlecode.com/svn/trunk/Vermilion/Modules/StockQuoter/StockQuoter.py

当前价格(“ l”)是实时的,延迟与Yahoo Finance相当。您应该注意一些怪癖。少数股票需要交易所前缀。例如,如果查询“ BTIM”,则会收到“错误请求”错误,但“ AMEX:BTIM”有效。即使使用交易所前缀,也有少数股票不起作用。例如,即使Google Finance确实具有有关纳斯达克股票的信息,查询“ FTWRD”和“ NASDAQ:FTWRD”都会生成“错误请求”错误。

“ el”字段(如果存在)告诉您当前的盘前或盘后价格。



4
不幸的是,Google Finance API似乎已弃用,并将于2012
vegemite4me

2
是的,可以浏览一下,并且Google财务现在已停用,并且不对外营业。鉴于Google的跟踪记录关闭API,除非您与他们签订了合同并与之签订合同,否则我将非常不愿意在此基础上建立企业或应用程序
Shawn Vader 2014年

1
任何新文档?服务仍然有效,寻找一个股票搜索太:)像雅虎一个
若奥·努涅斯

25

您可以将HTTP请求发送到http://finance.yahoo.com,以请求符号,名称,引号和各种其他数据。数据以.CSV格式返回,因此您可以在一个查询中请求多个符号。

因此,如果您发送:

http://finance.yahoo.com/d/quotes.csv?s=MSFT+F+ATT&f=sn

您将获得类似的信息:

"MSFT","Microsoft Corp"
"F","FORD MOTOR CO"
"ATT","AT&T"

这是一篇名为“ 下载Yahoo数据”文章,其中包括用于请求数据的各种标签


1
不幸的是,从符号中查找公司名称很容易。我正在寻找一种自动从公司名称列表中自动查询股票代号的方法。Google迄今为止搜索效果最好,我可以在列表中找到几乎任何公司的符号,而无需手动搜索,但是Google具有限速功能,在请求1000次后,您会看到503错误。
dancavallaro

不是答案,而是对域有用
肯尼2010年

看起来api使用存在法律问题。打开[下载Yahoo数据]时,您会看到Yahoo的记录,即以这种方式使用其服务是非法的
Bogdan 2014年

1
您可以看到jarloo.com/yahoo_finance中记录的相同界面。或在archive.org搜索原始文件。
乔治


9

2
更好的是,在交换站点上跳过符号查找-只需将其完整列表屏幕抓取到您自己的本地表中,然后自己进行查找即可。

@John Pirie:是的,也是... :-)
Stobor

7

使用YQL,您无需担心。它是Yahoo的一种查询语言,您可以获取所有股票数据,包括股票行情的公司名称。这是一个REST API,它通过XML或JSON返回结果。我在网站上有完整的教程和源代码,请访问:http : //www.jarloo.com/yahoo-stock-symbol-lookup/


看起来不错,但返回的结果限制为10个结果。有机会得到更多吗?
Timo 2015年



1

您最好的选择可能是使用其他查找服务之一(仍是屏幕抓取),并检查它们是否不需要验证码。

最后一个似乎在任何时候都需要CAPTCHA的可能性最小,但是值得检查所有三个。



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.