2009-10-21 76 views

回答

0

您是否嘗試過使用HTML Agility Pack進行html解析,而不是使用ui元素?

+0

謝謝,它返回的URL我將傳遞給它的HTML流? – 2009-10-21 06:37:50

+0

我不知道你在做什麼類型的流。 HTML Agility Pack將爲您提供經過解析的DOM的DOM結構,就像System.Xml針對xml所做的一樣。這是一個很好的解析html的工具,但是如果你只是想將一個頁面的html內容作爲一個字符串來讀取,就可以像前面提到的那樣使用WebClient類。 – sisve 2009-10-21 17:09:15

2

你也可以使用Web客戶端:

String url = "http://www.ms.com"; 
    WebClient client = new WebClient(); 

    // Add a user agent header in case the 
    // requested URI contains a query. 

    client.Headers.Add ("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"); 

    Stream data = client.OpenRead (url); 
    //Do stuff here 
    //StreamReader reader = new StreamReader (data); 
    //string s = reader.ReadToEnd(); 
    //Console.WriteLine (s); 
    data.Close(); 
    reader.Close(); 
+0

謝謝,這是非常好的代碼,它的工作原理。你知道是否有可能像我使用IE一樣重新啓動頁面?這似乎不使用IE cookie,這是有道理的,但我所訪問的鏈接是一個論壇,如果我可以訪問它,就好像我已經登錄一樣,這將是非常棒的。這可能嗎? – 2009-10-21 06:59:12

+0

您需要創建自己的HttpRequest併爲其設置關聯的Cookie容器。 – sisve 2009-10-21 17:09:52

+0

是的,西蒙是正確的,你需要使用HttpRequest來設置cookie。 – jerjer 2009-10-22 06:41:29

相關問題