使用股票代码输入,雅虎或Google API检索公司名称

pau*_*ulz 2 python json google-finance-api stock yahoo-finance

只是寻找简单的api返回,我可以在其中输入股票代码并接收完整的公司名称:

ticker('MSFT')将返回“ Microsoft”

小智 9


import yfinance as yf

msft = yf.Ticker("MSFT")

company_name = msft.info['longName']

#Output = 'Microsoft Corporation'
Run Code Online (Sandbox Code Playgroud)

这样你就可以从股票代码中获得公司的全名

  • 我喜欢 yfinance 并经常使用它。不幸的是,信息方法似乎有些不稳定,具体取决于您使用的股票。上面的其他一些建议似乎来自雅虎和谷歌 API 仍在运行的时代。 (2认同)

mas*_*nun 5

您首先需要找到一个网站/ API,该网站/ API可让您查找股票代码并提供信息。然后,您可以查询该API以获得信息。

我在这里想出了一个快速而肮脏的解决方案:

import requests


def get_symbol(symbol):
    symbol_list = requests.get("http://chstocksearch.herokuapp.com/api/{}".format(symbol)).json()

    for x in symbol_list:
        if x['symbol'] == symbol:
            return x['company']


company = get_symbol("MSFT")

print(company)
Run Code Online (Sandbox Code Playgroud)

该网站仅提供公司名称。我没有进行任何错误检查。并且您需要该requests模块才能正常工作。请使用安装它pip install requests

更新:这是使用Yahoo!的代码示例。财务API:

import requests


def get_symbol(symbol):
    url = "http://d.yimg.com/autoc.finance.yahoo.com/autoc?query={}&region=1&lang=en".format(symbol)

    result = requests.get(url).json()

    for x in result['ResultSet']['Result']:
        if x['symbol'] == symbol:
            return x['name']


company = get_symbol("MSFT")

print(company)
Run Code Online (Sandbox Code Playgroud)

  • 是否可以根据公司名称返回股票代码?我应该在您的代码中修改哪些参数? (4认同)

小智 5

使用模糊匹配从公司名称中获取公司符号,反之亦然

from fuzzywuzzy import process
import requests

def getCompany(text):
    r = requests.get('https://api.iextrading.com/1.0/ref-data/symbols')
    stockList = r.json()
    return process.extractOne(text, stockList)[0]


getCompany('GOOG')
getCompany('Alphabet')
Run Code Online (Sandbox Code Playgroud)