VB6.0でMSXML2.0を使用し、HTMLソースを取得しておりましたが、
同じことをVB.NETでも可能でしょうか?
よろしくお願いします。
XMLHTTPオブジェクトの事かな?
.NET でも、MSXML〜MSXML6 を使って、同じように取得する事はできますが、
ソースの取得だけなら、System.Net.WebClientを使った方が楽でしょう。
魔界の仮面弁士様
回答ありがとうございます。
その後、以下の2つでHTMLソースの取得が可能なことを確認しました。
・WebClient
・参照設定によるMSXML
ここで更に質問ですが、参照設定によるMSXMLはVB.NET2005よりも
VB6.0の方が約6〜10%ほど速いのですが、このVB6.0でのMSXMLよりも
さらに速いVB.NETでのHTML取得はないですか?
よろしくお願いします。
> ・参照設定によるMSXML
ActiveX / COM の呼び出しには中間ラッパーを介するので、一般的には
VB6の場合よりも効率が落ちるとされています。おまけに VB.NET では、
COMオブジェクト解放のために、Marshal.ReleaseComObject() を
適宜呼び出さねばならないので、処理が煩雑になります。
出来る限り、.NETのマネージクラスを使うようにしましょう。
> さらに速いVB.NETでのHTML取得はないですか?
存じませぬ。(^^;
複数の URL から連続して取得するという事なら、マルチスレッドで
並列動作させれば、ある程度までは高速化するかも知れませんが、
それとて上限はあるでしょうしね。
もしかしたら、より低レベルな System.Net.Sockets 名前空間を使えば
少しは早くなるのかも知れませんが…いずれにしても、測定した事は無いです。
詳しい情報をありがとうございました。
ツイート | ![]() |