Web上のHTMLを取得したいのですが、下記のコードで試したところ
"このページにはフレームが使用されていますが、お使いのブラウザでは
サポートされていません。"
と表示されうまく取得出来ませんでした。
"ソースの表示"で表示されるテキストデータを取り込みたいのですが、
何か良い方法はないでしょうか?
Private Sub Form_Load()
WebBrowser1.Navigate "http://******"
Text1.Text = WebBrowser1.Document.body.outerHTML
End Sub
環境は VB6.0、WindowsXP です。
宜しくお願いします。
マイクロソフトのサンプルで・・・
http://support.microsoft.com/kb/259100/ja
こういうものがありますが・・・如何?
要は、ブラウザで表示させてHTMLを取得するのではなく
直接ソケット通信でHTMLを取得する。
以上。
オショウ様、回答ありがとうございます。
早速試してみます。
せっかく参考となるURLを教えて頂いたのですが、
私の力量不足で理解出来ませんでした。
申し訳ありません。
ホームページにフレームが使用されている場合、
WebBrowserでHTMLを取得する事は出来ないので
しょうか?
> "ソースの表示"で表示されるテキストデータを取り込みたいのですが、
> 何か良い方法はないでしょうか?
今の方法で合っていると思いますよ。実際、Internet Explorer で
http://www.htmq.com/html/frameset.shtml
の『使用例』を表示させた場合、IE メニューにある
[表示]-[ソースの表示]では、下記のソースが表示されますし。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><title>フレーム使用例</title></head>
<frameset rows="100,*">
<frame src="frame_ue.htm" name="ue">
<frameset cols="150,*">
<frame src="frame_hidari.htm" name="hidari">
<frame src="frame_migi.htm" name="migi">
</frameset>
<noframes>
このページはフレームを使用しています。
</noframes>
</frameset>
</html>
もし、個々のフレームのソースを拾いたいという意味であるならば、
frames コレクション等から、それぞれのフレームを指定すれば OK かと。
なお、その場合は下記の点に注意が必要です。
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200407/04070100.txt
魔界の仮面弁士様、解説ありがとうございます。
個々のフレームのソースを取得したい場合は、
それぞれのフレームを指定する必要があるのですね。
早速試してみます。
どうもありがとうございます。
framesコレクションを使用する事により、フレームのソースを
取得する事が出来ました。どうもありがとうございました。
VB6.0のWebBrowserには、どうようなプロパティやメソッドが
あるのか知りたいのですが、何処か参考となるサイトを
ご教授願えないでしょうか?
WebBrowser コントロールの日本語版ヘルプファイルは、かつて
Office 97 などに付属していました。(Webrowse.hlp)
ただし、情報が十数年間更新されていないので、Platform SDK もしくは
オンライン版の MSDN ライブラリを見た方が良いでしょう。
和訳されていないのが難点ですが。
http://msdn.microsoft.com/en-us/library/aa752043.aspx
なお、Document プロパティから返されるオブジェクトについては、
それは WebBrowser の機能では無く、それぞれのドキュメントによって
異なるものであることに注意してください。
たとえば、HTML を表示させれば、HTML の DOM が返されますが、
フォルダを表示させれば、ShellFolderView オブジェクトとなりますし、
PDF を表示させれば、AcroPDF 等のオブジェクトとなります。
で。HTML に限った話であれば、MSHTML.TLB を参照設定して使うのが楽でしょう。
なお、ブラウザのバージョンによって、使える機能に差が生じますので、
開発環境と実行環境の IE バージョンは一致させておいてください。
http://msdn.microsoft.com/en-us/library/aa741317.aspx
魔界の仮面弁士様、情報ありがとうございます。
また返信が遅れてしまい申し訳ありませんでした。
ご教授頂いた情報を基に色々やってみようと思います。
ツイート | ![]() |