2011-01-21 9 views
2

HTMLAgilityPackを使って見つかった要素の中に、以下の要素のリストがあります。XHTML HTMLAgilityPackを使った解析

<option value="67"><span style="color: #cc0000;">Horde</span> Leveling/Dailies & Event Guide ($50.00)</option> 

私がしなければならないことは、タグ内のすべてのテキストを解析し、そこにすべての巨大なジャンボを入れないことです。 (!一見)私はすべてを試みたが、それはいつものように探して出てくる: レベリング/デイリー&イベントガイド($ 50.00)

、時にはよう大群

大群
レベリング
/デイリー&イベント案内($ 50.00)

などの2つのバリエーションがあります。私は文字列の各文字をバイトとしてプリントアウトすることさえ行ってきましたが、改行やフィードは見つけられませんでした。ここでは、参照用のHTMLの完全なソースがあり、ページから直接コピーされています。デフォルトでは

<option value="13"><span style="color: #0000ff;">Alliance</span> Leveling Guide ($30.00)</option> 


<option value="12"><span style="color: #cc0000;">Horde</span> Leveling Guide ($30.00)</option> 

<option value="46"><span style="color: #cc0000;">Horde</span> Dailies & Events Guide ($25.00)</option> 

<option value="67"><span style="color: #cc0000;">Horde</span> Leveling/Dailies & Event Guide ($50.00)</option> 


<option value="11"><span style="color: #0000ff;">Alliance</span> &amp; <span style="color: #cc0000;">Horde</span> Leveling Guide ($50.00)</option> 

<option value="97"><span style="color: #0000ff;">Alliance</span> Achievements & Professions Guide ($20.00)</option> 

<option value="98"><span style="color: #cc0000;">Horde</span> Achievements & Professions Guide ($20.00)</option> 


<option value="99"><span style="color: #0000ff;">Alliance</span> &amp; <span style="color: #cc0000;">Horde</span> Achievements & Professions Guide ($30.00)</option> 
+0

はあなたが私達にあなたのコードを表示することができます:ここで

は、あなたが望む何をすべきコードのですか? html-nodes btwのInnerText-propertyを使用していますか? – Ozzy

答えて

5

<OPTION>タグは、それが、この場合には、それはXPATHをキャッチするのは簡単ではありません理由です、クローズ</OPTION>を必要としないことを意味する、「空」とHtmlの敏捷性パックによって処理されます。これは、HtmlNode.ElementFlagsコレクションを使用して変更できます。

HtmlDocument doc = new HtmlDocument(); 
HtmlNode.ElementsFlags.Remove("option"); 
doc.LoadHtml(yourHtml); 
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//option")) 
{ 
    Console.WriteLine(node.InnerText); 
} 
+0

これは私の要素を取得している方法です、私はIDではなく、XPATHでそれをやっているので、要素がうまくいきます。私が問題を抱えているのは、InnerTextプロパティ自体と、どのようにフォーマットが出てくるかです。 HtmlNodeオプション= doc.GetElementbyId( "pur_li"); – Tanner

関連する問題