excel_html_パース_スクレイピング_ライブラリ

excel vbaで リモートにあるサーバーから出力される
HTMLをパースするさいのライブラリはどのようなものがあるのでしょうか?

参照設定などは要るのでしょうか?

    ↓


Excel VBAで
リモートサーバーから出力されるHTMLをパースする際には、
以下のライブラリがよく使われます:


1. **Microsoft HTML Object Library**
 
   - HTMLを操作するための基本的なライブラリです。
    HTMLドキュメントを解析し、要素を取得するのに便利です。

   - **参照設定が必要**です。

VBAエディタで「ツール」→「参照設定」を開き、

「Microsoft HTML Object Library」にチェックを入れてください。

2. **Microsoft XML, v6.0**
 
   - HTTPリクエストを送信してHTMLを取得する際に使用されます。
    HTMLを文字列として取得し、HTML Object Libraryと
    組み合わせて解析することができます。

   - こちらも**参照設定が必要**です。
    「Microsoft XML, v6.0」にチェックを入れてください。



3. **WinHTTP Services**  

   - HTTP通信を行うためのライブラリです。
        リモートサーバーからHTMLを取得する際に使われます。
   
   - 必要に応じて参照設定を行います。

### サンプルコード
以下は、Microsoft HTML Object Libraryを使った簡単な例です:


```vba

Sub ParseHTML()

    Dim http As Object
    Dim htmlDoc As Object
    Dim url As String
    
    url = "https://example.com" ' リモートサーバーのURLを指定
    Set http = CreateObject("MSXML2.XMLHTTP")
    http.Open "GET", url, False
    http.Send
    
    Set htmlDoc = CreateObject("HTMLFile")
    htmlDoc.Write http.responseText
    
    ' HTML要素を取得
    Debug.Print htmlDoc.getElementsByTagName("title")(0).innerText
    
End Sub


```

このコードでは、`MSXML2.XMLHTTP`を使ってHTMLを取得し、

`HTMLFile`オブジェクトで解析しています。

参照設定を行うことで、コード補完が効くようになり、

開発がスムーズになります。



もし具体的な用途や課題があれば教えてください!

さらに詳しくお手伝いしますよ。 😊



コメント