2012-02-05 6 views
6

:あなたは木や連結上を歩く必要があるためhtmlソースからページに表示されているテキストを抽出するにはどうすればよいですか?私はHtmlAgilityPack、次のコードを試してみましたが、それはHTMLリストからテキストをキャプチャしていません

<as html> 
<p>This line is picked up <b>correctly</b>. List items hasn't...</p> 
<p><ul> 
<li>List Item 1</li> 
<li>List Item 2</li> 
<li>List Item 3</li> 
<li>List Item 4</li> 
</ul></p> 
</as html> 
+0

これはおそらくJavascriptのためです。 – SLaks

+0

分析している 'HTML'を表示してください。 – RedFilter

+0

@RedFilter HTMLを更新しました。 –

答えて

2

InnerTextは、私の作品:

string StripHTML(string htmlStr) 
{ 
    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
    doc.LoadHtml(htmlStr); 
    var root = doc.DocumentNode; 
    string s = ""; 
    foreach (var node in root.DescendantNodesAndSelf()) 
    { 
     if (!node.HasChildNodes) 
     { 
      string text = node.InnerText; 
      if (!string.IsNullOrEmpty(text)) 
      s += text.Trim() + " ";      
     } 
    } 
    return s.Trim(); 
} 
3

ここ
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
doc.LoadHtml(htmlStr); 
HtmlNode node = doc.DocumentNode; 
return node.InnerText; 

は失敗したコードですコードの一部に続いていくつかの方法のすべてのノード

関連する問題