トップページ > windows > microsoft office > EXCEL > VBA > 通信コンポーネントを利用(wininet,winhttp,XMLHttp等

最終更新日時2012-04-12ここを編集




■目次

■本文

VBAで通信コンポーネントを利用し、WEBページ(HTMLファイル)をダウンロード(wininet,winhttp,XMLHttpなど。)

イ.winhttpライブラリを使ったHTMLダウンロード

WinHTTP は、古参の HTTP ライブラリ WinInet の後継ライブラリです。ただし、必ずしも下位互換ではないため、場合によっては WinInet との使い分けが必要になる場合もあるようです。引用元: WinHTTP ライブラリで Web スクレイピング(1)~ GET 編~ | YU-TANG's MS-Access Discovery



ロ.wininetを使ったWEBページ(HTMLファイル)ダウンロード方法

Webページのデータを取得し加工したい場合がありますが、IEを使ったり、ActiveX(WebBrouser)コントロールなどを使うと、簡単に受信できる反面、余計な画像も取得されて動作が非常に遅くなります。ここでは、WinInetのAPI関数で直接HTTPによりデータを受信します。
引用元:WinInetによるHTTPデータの受信

この本に色々載ってそう。
VBAによるTCP/IPプログラミング入門
第5章 WinInet APIを利用したTCP/IPプログラム



ハ.MSHTMLライブラリおよび、createDocumentFromUrlを使ったWEBページ(HTMLファイル)ダウンロード方法



ニ.XMLHTTPを使ったWEBページ(HTMLファイル)ダウンロード方法

サイト側がAPIを公開しており、その戻り値がXMLのときに使いやすい。
でも、2009年時点ではwinhttpのほうが主流みたいです。


XMLHttpRequest は、MSXML ライブラリが提供する、COM オブジェクト 引用元: XMLHttpRequest を作成する - Entering Passive Mode

XMLHTTPはリダイレクトをうまく扱えない
解説 : XMLHttpRequest
扱う対象がXMLという意味ではなく、戻り値がXML。らしい。


ホ.XMLHttpRequestを使ったWEBページ(HTMLファイル)ダウンロード方法

MSXML は XMLHttpRequest の実装を 2 種類用意している。それは、「XMLHTTP」「ServerXMLHTTP」だ。 引用元: XMLHttpRequest を作成する - Entering Passive Mode



へ.ServerXMLHTTPを使ったWEBページ(HTMLファイル)ダウンロード方法

WinHTTP と呼ばれる API を基盤とする実装だ。
WinHTTP は、当初はサーバ間の HTTP 通信のために作成され、
WinInet よりもセキュリティ面で安全なように、
Cookie やキャッシュなどの情報は一切共有しない。
引用元: XMLHttpRequest を作成する - Entering Passive Mode






ページフッタ

このページの1階層上のページ

このページの1階層下のページ

このページに含まれるタグ

VBA

このページへのアクセス数

今日: -
昨日: -
これまで合計: -

タグ:

VBA
最終更新:2012年04月12日 11:35