5
HTMLAgilityPackでid属性を持つtdの内部テキストを選択しようとしています。HTMLAgilityPack id属性を持つtdタグのinnerTextを取得する
HTMLコード:
<td id="header1"> 5 </td>
<td id="header2"> 8:39pm </td>
<td id="header3"> 8:58pm </td>
...
コード:
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(data);
var nodes = doc.DocumentNode.SelectNodes("//td[@id='header1']");
if (nodes != null)
{
foreach (HtmlAgilityPack.HtmlNode node in nodes)
{
MessageBox.Show(node.InnerText);
}
}
私は私が正しくTDタグを選択するわけではないので、ヌルのノードを取得しておくが、私は間違って何をしたかを把握することはできません...
編集:
私はheader1とheader2でミスをしましたが、5 d他のtdタグにヘッダー1から5が付いています。
あなたはこれらのIDを確認しましたあなたヘクタール撮影されました。 '
から検索していますhtmlでは、idは 'header2'です。 'header1'として指定されています。 –
あなたのコードは正しいようです。あなたのデータをどこかに投稿できますか? –
答えて
header1
を選択しようとしていますが、IDはheader2
です。また、直接
GetElementById
を使用することができます。出典
2013-03-16 11:38:11
うーん..私はあなたが何も悪いことをやっているとは思いません。コードでは、
<td>
のみをid="header1"
としてください。あなたが持っている場合は、header5
からheader1
から、あなたがすることができる、のは言わせて:私はあなたが
null
を取得している、なぜ私たちはあなたを伝えることができるようにあなたは、あなたの全体のコードを掲示示唆しているが、また、より良い方法を。。//tr[@id='some-id']//td[contains(@id, 'header')]
のような(例えば、何か上記のループを実行せずに<td>
ノードを解析するの出典
2013-03-18 06:24:57
あなたはinnerHTMLのプロパティなどを用いて、あなたの問題を解決することができます:
出典
2016-09-08 09:52:52 Faraz
関連する問題