分析網頁的另一種途徑,通過下載網頁到本地然後裝入IHTMLDocument2 對象,之後就可以為所欲為了,哈哈

來源:互聯網
上載者:User

csdn上的文章,不知道那位高手發的,使用webclient下載回來的應該只是文本,沒有圖片,沒有載入active等,所以速度比較快

對於那些網頁捉取的比較有用,例如我,哈哈

-------------------------

用瀏覽器控制項分析網頁有很多缺點,例如速度慢,非同步下載,有介面等等,現在介紹分析網頁的另一種途徑。

首先,匯入microsoft.mshtml組件。

然後,獲得IHTMLDocument2介面。代碼如下:

[ComImport, Guid("7FD52380-4E07-101B-AE2D-08002B2EC713"),InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IPersistStreamInit
{
IntPtr GetClassID();
void IsDirty();
void Load(IntPtr pStream);
void Save(IntPtr pStream, bool fClearDirty);
long GetSizeMax();
void InitNew();
}

IHTMLDocument2 _doc=new mshtml.HTMLDocumentClass();
IPersistStreamInit pS=(IPersistStreamInit)_doc;
pS.InitNew();

現在_doc裡面什麼也沒有,需要向裡面填充內容。方法如下:

WebClient client=new WebClient();

byte[] data=client.DownloadData(url);
_doc.body.innerHTML=Encoding.Default.GetString(data);

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.