2014-02-14 72 views
0

我想在html代碼中查找所有類型的值。我使用的HTML敏捷包這裏是我的代碼:使用html敏捷包c解析Html文件#

doc.Load(resp.GetResponseStream()); 
foreach (HtmlNode input in doc.DocumentNode.SelectNodes("//input")) 
{ 
    HtmlAttribute value = input.Attributes["value"]; 
    Console.WriteLine(value); 
} 

代碼的輸出僅僅是htmlagilitypack.htmlattribute。你能告訴我它是什麼嗎?

回答

0

表示HTML標記屬性。如果你需要它的值,你必須使用它的Value屬性。

例如:

doc.Load(resp.GetResponseStream()); 
foreach (HtmlNode input in doc.DocumentNode.SelectNodes("//input")) 
{ 
    HtmlAttribute attr = input.Attributes["value"]; 
    if (attr != null) 
     Console.WriteLine(attr.Value); 
} 

對於HTML:

<input type=text name="myInput" value="Come get some!" /> 

輸出將是:Come get some!

編輯:空校驗添加

+0

即時得到這個誤差對象引用不設置爲一個object.doc的實例它不是空的,因爲在我使用這個代碼之前,它是re轉兩次htmlagilitypack.htmlattribute和我有兩個線匹配這種情況。 – user3297904

+0

當輸入沒有這個屬性時發生。檢查attr是否爲空。 請參閱有關該問題:http://stackoverflow.com/questions/4090200/htmlagilitypack-hasattribute – Sarrus