Interfejs API wyszukiwania symboli giełdowych [zamknięty]

97

Czy istnieje interfejs API, który oferuje tylko prostą usługę wyszukiwania symboli? tj. wprowadź nazwę firmy, a pojawi się symbol giełdowy? Próbowałem właśnie zeskrobać ekran Google Finance, ale po chwili ogranicza Cię to stawka i musisz wprowadzić CAPTCHA. Próbuję wyszukać około 2000 symboli giełdowych. Jakieś pomysły?

dancavallaro
źródło
Nie ma szczęścia z Yahoo Finance?
Noldorin
Musisz dodać opóźnienie między wyszukaniami. Powiedz 5 sekund.
siamii
Ten skrypt może być przydatny: github.com/kevin91nl/scrape-ticker-symbols
www.data-blogger.com
Niedawno przeprowadziłem ocenę dostępnych interfejsów API do handlu. Strategiczne-options.com/insight/ ...
Czad
Ten robi dokładnie to, co chcesz i jest codziennie aktualizowany rapidapi.com/logicione/api/ ...
Watt

Odpowiedzi:

104

Możesz użyć wyszukiwania symboli Yahoo w następujący sposób:

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

Gdzie zapytanie to nazwa firmy.

W zamian otrzymasz coś takiego:

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"
            }
        ]
    }
}
)

Który jest JSON i bardzo łatwy w obsłudze.

Cicho ... nikomu nie mów.

Jalmarez
źródło
1
hej, czy w zapytaniu można użyć znaku dzikiego? próbował% i *, ale bez powodzenia ...
NightWolf,
2
zwraca to maksymalnie 10 wyników w formacie JSON !!!! Jak możemy ominąć to ograniczenie TYLKO 10 wyników?
Sandy505
5
Jeszcze kilka dni temu to rozwiązanie wydaje się być zepsute. Yahoo wymaga teraz parametru „region”, a ustawienie go na „US” nie robi żadnej różnicy. Jeśli ktoś ma obejście problemu, bardzo chciałbym to usłyszeć!
wstr
6
wygląda na to, że dodali 2 dodatkowe parametry, „region” i „lang”. wypróbuj następujący d.yimg.com/autoc.finance.yahoo.com/…
lancegoh
2
A teraz nie obsługuje już wyszukiwania rozmytego, może jedynie wyszukiwać symbol „Dokładnie”. :( Czy ktoś ma obejście lub jakiś ukryty parametr, aby włączyć funkcję wyszukiwania rozmytego?
Jonathan Chen
32

Google Finance umożliwia jednoczesne pobieranie do 100 notowań giełdowych za pomocą następującego adresu URL:

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

Na przykład:

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

Ktoś odszyfrował dostępne pola tutaj:

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

Bieżąca cena („l”) jest podawana w czasie rzeczywistym, a opóźnienie jest porównywalne z Yahoo Finance. Jest kilka dziwactw, o których powinieneś wiedzieć. Kilka akcji wymaga prefiksu giełdy. Na przykład, jeśli zapytasz „BTIM”, zostanie wyświetlony błąd „Złe żądanie”, ale „AMEX: BTIM” będzie działać. Niektóre akcje nie działają nawet z prefiksem giełdy. Na przykład zapytanie „FTWRD” i „NASDAQ: FTWRD” generuje błąd „Złe żądanie”, mimo że Google Finance posiada informacje o tych akcjach NASDAQ.

Pole „el”, jeśli jest obecne, informuje o aktualnej cenie przed wprowadzeniem na rynek lub po godzinach.

Aliphany
źródło
4
Niestety wygląda na to, że interfejs API Google Finance jest przestarzały i zostanie zamknięty 20 października 2012 r. Developers.google.com/finance
vegemite4me
2
Tak, spojrzenie i finanse Google są teraz pozbawione kosztów i nie są otwarte dla biznesu. Biorąc pod uwagę osiągnięcia w Google podczas zamykania API, bardzo wahałbym się, czy oprzeć na nich firmę lub aplikację, chyba że masz z nimi umowę i nie masz z nimi umowy
Shawn Vader
1
Jakieś nowe dokumenty? Usługa nadal działa, szukam też wyszukiwania akcji :) jak yahoo one
João Nunes
25

Możesz wysłać żądanie HTTP do http://finance.yahoo.com z żądaniem symboli, nazw, cudzysłowów i wszelkiego rodzaju innych danych. Dane są zwracane jako .CSV, więc możesz zażądać wielu symboli w jednym zapytaniu.

Więc jeśli wyślesz:

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

Otrzymasz coś takiego:

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

Oto artykuł zatytułowany Pobieranie danych Yahoo, który zawiera różne tagi używane do żądania danych.

Robert Cartaino
źródło
1
Niestety, znalezienie nazwy firmy na podstawie symbolu jest łatwe. Szukam sposobu na zautomatyzowanie wyszukiwania wsadowego symboli giełdowych na liście nazw firm. Google ma zdecydowanie najlepsze wyszukiwanie, mogę znaleźć symbol dla prawie każdej firmy na mojej liście bez konieczności ręcznego wyszukiwania, ale Google ma ograniczanie szybkości i po około 1000 żądaniach wyświetli błąd 503.
dancavallaro
nie jest odpowiedzią, ale przydatna dla domeny
kenny
wygląda na to, że użycie interfejsu API ma problemy prawne. Podczas otwierania [Downloading Yahoo Data] zobaczysz notatkę Yahoo, że korzystanie z ich usług w ten sposób jest nielegalne
Bogdan
1
Możesz zobaczyć ten sam interfejs udokumentowany na jarloo.com/yahoo_finance . Lub wyszukaj oryginał na archive.org .
George
9

Jeśli nie chcesz rejestrować się w usłudze, prawdopodobnie wróciłbym do samych giełd; większość z nich nie jest jeszcze CAPTCHA'owana ...

Strona wyszukiwania symboli dla:

itp...

Stobor
źródło
2
Jeszcze lepiej, pomiń wyszukiwanie symboli w witrynach wymiany - po prostu zeskanuj ich pełne listy do własnej lokalnej tabeli i przeprowadź wyszukiwanie samodzielnie.
@John Pirie: Tak, to też ... :-)
Stobor
7

Użyj YQL i nie musisz się martwić. Jest to język zapytań firmy Yahoo i możesz uzyskać wszystkie dane giełdowe, w tym nazwę firmy na giełdzie. Jest to REST API i zwraca wyniki za pomocą XML lub JSON. Mam pełny samouczek i kod źródłowy na mojej stronie, spójrz: http://www.jarloo.com/yahoo-stock-symbol-lookup/

Kelly
źródło
Wygląda to ładnie, ale zwraca wynik z limitem 10 wyników. Jakaś szansa, żeby dostać więcej?
Timo
2

Google Finance ma interfejs API - prawdopodobnie będziesz musiał ubiegać się o klucz programisty, ale przynajmniej oszczędzisz sobie kłopotów ze skrobaniem ekranu: http://code.google.com/apis/finance/reference.html

matowe
źródło
3
Google jest teraz pozbawiony możliwości i nie jest już otwarty
Shawn Vader
1

Twoje najlepsze zakłady prawdopodobnie idą z jedną z innych usług wyszukiwania (nadal skrobanie ekranu) i sprawdzaniem, czy nie wymagają one CAPTCHA.

Ta ostatnia wydaje się najmniej wymagać CAPTCHA w dowolnym momencie, ale warto sprawdzić wszystkie trzy.

Noldorin
źródło
0

Użyj YQL: języka podobnego do sql do pobierania rzeczy z publicznych api: Konsola YQL (łącze zewnętrzne)

Daje ci ładny plik XML do pracy!

Fabdrol
źródło