投稿日 | : 2003/10/16(Thu) 12:55 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re^3: HTMLを取得できません |
取得のタイミングによっては、DocumentプロパティからNothing が返される事があるため、
『Do Until objIE.Document.readyState = "complete"』だけですと、実行時エラー91が
発生する事もありえます。
可能であれば、objIEをWithEventsで宣言して、DocumentCompleteイベントを利用された方が良いでしょう。
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200310/03100037.txt
もし、イベントを使わず、ループで待機させるのであれば、
1. 『.Busy = False』まで待機してから、
2. 『Not .Document Is Nothing』まで待機し、最後に
3. 『.Document.readyState = "complete"』まで待機する。
のように、監視ループを3つ用意しておく事をお奨めします。
ちなみに、Documentプロパティから返されるのは、HTMLをDOMとして解析した結果なので、
本来のHTMLソースとは異なった物になります。
元のHTMLソースを得たい場合は、下記を参照してみてください。
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200310/03100017.txt
> Do While objIE.Busy = True
> で読み込み終了まで待つことができると思ってたのですが、違ったようですね。
Busyプロパティから分かるのは、HTML文書をダウンロードしおわった、という事までです。
ダウンロードした文書が、Documentプロパティとして完全に解析されたかどうかを示すわけではありません。
(HTMLの解析はInternetExplorerではなく、MSHTMLによって行われます)