Использование Excel VBA для получения котировок акций от Google, или Bloomberg считает меня ботом - PullRequest
0 голосов
/ 26 января 2020

Я пытаюсь создать макрос Excel, который будет получать котировки акций от Google или Bloomberg. Кажется, что каждый сайт обнаруживает, что я не звоню из веб-браузера и отказывается работать.

Вот упрощенная версия моего кода, демонстрирующая проблему. Если вы скопируете и вставите значение URL непосредственно в веб-браузер, он будет работать нормально. Но если вы посмотрите на результат, возвращаемый моим кодом, это сообщение, которое по сути говорит: «Мы думаем, что вы не человек». Любой способ обойти это?

(версия Bloomberg на самом деле предпочтительнее, потому что возвращает JSON. Версия Google возвращает HTML, что мне придется анализировать. Но на этом этапе я возьму все, что угодно.)

Private Sub TestQuote()
    Dim sURL As String
    Dim http As WinHttp.WinHttpRequest

    'BLOOMBERG QUERY
    sURL = "https://www.bloomberg.com/markets/api/bulk-time-series/price/MSFT%3AUS?timeFrame=1_DAY"

    'GOOGLE QUERY
    'sURL = "https://www.google.com/search?q=MSFT"

    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    http.Open "GET", sURL, False
    http.send

    Debug.Print http.responseText
End Sub

1 Ответ

0 голосов
/ 27 января 2020

Спасибо @OwlsSleeping за публикацию комментария, который, по сути, дал мне ответ. В текущей версии Excel встроена эта функция (возможность поиска информации об акциях). Дух.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...