- 日時: 2009/12/27 13:22
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[インターネット][][] * * キーワード:WEB,HTML,リモート操作,,, * ***********************************************************************************
元質問:インターネット上の文字列取得 - js 2003/04/09-01:10 No.3478
--------------------------------------------------------------------------- Re: インターネット上の文字列取得 - 魔界の仮面弁士 2003/04/09-10:46 No.3489 ---------------------------------------------------------------------------
> インターネット上のHTML内にある文字列を値として > ソフトに取り込みたいのですが、そのようなことはできますでしょうか?
やり方はいろいろありますが、「XMLHTTPオブジェクト」を使うというのは如何でしょうか?
これだと、文字コードの変換も自動で行ってくれますので、yahooのような、 「文字コードがEUC-JPであるページ」でも、比較的簡単に取り込めるかと思います。
'-------- Option Explicit
Private Sub Form_Load() Text1.Text = "http://www.yahoo.co.jp/"
'Text2のMultiLineはTrueにしておいて下さい。 Text2.Text = "" End Sub
Private Sub Command1_Click() Dim xmlHTTP As Object Set xmlHTTP = getXMLHTTP() If xmlHTTP Is Nothing Then MsgBox "XMLHTTPオブジェクトの生成に失敗しました。", vbExclamation Exit Sub End If
xmlHTTP.Open "GET", Text1.Text, False xmlHTTP.send ""
Text2.Text = xmlHTTP.responseText Set xmlHTTP = Nothing End Sub
Private Function getXMLHTTP() As Object Dim L As Long On Error Resume Next
'セキュリティレベル & パフォーマンスの高い MSXML4を優先して作成する。 '対応バージョンのXMLHTTPがインストールされていない場合は、 '下位バージョンのXMLHTTPオブジェクトの生成を試みる。 For L = 0 To 4 Select Case L Case 0 Set getXMLHTTP = CreateObject("Msxml2.XMLHTTP.4.0") Case 1 Set getXMLHTTP = CreateObject("Msxml2.XMLHTTP.3.0") Case 2 Set getXMLHTTP = CreateObject("Msxml2.XMLHTTP.2.6") Case 3 Set getXMLHTTP = CreateObject("Msxml2.XMLHTTP") Case 4 Set getXMLHTTP = CreateObject("Microsoft.XMLHTTP") End Select If Not getXMLHTTP Is Nothing Then Exit For End If Next End Function '---------
上記のようにHTML自体を取得するのではなく、テキストノードだけを取得したいのであれば、 XMLHTTP.responseTextの代わりに、MSHTMLの「innerText/outerTextプロパティ」を 利用するという手もあります。
---------------------------------------------------------------------------- 変ったコードなので試して見ました。 特に参照設定等も必要なく上記コードを そのまま実行できます。コードだけでは、どのように出力されるのか解らないので 実行結果の画像を添付しておきます。
その他下記のような書き込みもありますので参考の為に(当サイト内検索結果) http://tinyurl.com/22uk3y
by 花ちゃん ----------------------------------------------------------------------------- 画像をクリックすると元のサイズで見られます。
|