【EXCEL VBA】WinHttpRequestを使った YahooJapan のHTML取得サンプル

Webでいろいろサンプルを探している中で一番シンプルに思えた手法

XMLHTTPでも良いのだろうけど、自分にはこのオブジェクトでゴリゴリコーディングしたほうが合ってそうな予感。

‘参照設定で(Microsoft WinHTTP Services, version X.X)を行う。
Option Explicit

Sub HTML取得()
    Dim Http As New WinHttpRequest
    Dim URL As String
    Dim HTML As String
   
    URL = "http://www.yahoo.co.jp/" ‘サンプルURL 例)Yahoo
   
    With Http
        .Open "GET", URL, False  ‘ False = 同期実行
        .Send
        If .Status <> 200 Then ‘200OK
            Err.Raise 5, , "HTML の取得に失敗"
        Else
           ‘ HTML = .ResponseBody
           HTML = StrConv(.ResponseBody, vbUnicode, 1041) ‘ SJIS→Unicode変換
           Debug.Print HTML
        End If
    End With

End Sub

コメント

タイトルとURLをコピーしました