SelectSingleNodeを使用したhtmlagilitypack

c# html-agility-pack selectsinglenode xpath

質問

私はHtmlAgilityPackを使用して下の値を取得しようとしていましたが、成功しませんでした。私はSelectSingleNodeを使用しています。

ここに私のhtmlがあります。

<html>
<body>
    <table>
        <tr><td>One</td></tr>       
    </table>
</body>
</html>

コードビハインドは以下の通りです。

<html>
<body>
    <table>
        <tr><td>One</td></tr>       
    </table>
</body>
</html>

test (HtmlNode)変数はnullです。

どのように私はOne中の価値を得るつもりです。

受け入れられた回答

示されているように、あなたのサンプルはありません tbodyあなたのXPathにはノード(返さないだろうように、ノードをnullためSelectSingleNode )。

修正:

HtmlNode test = doc.DocumentNode.SelectSingleNode("/html/body/table/tr/td");

デバッグのヒント:XPathをゆっくり作成し、各結果/子ノードをチェックしてください:

HtmlNode test = doc.DocumentNode.SelectSingleNode("/html/body/table/tr/td");

人気のある回答

SelectSingleNodeでXPathを使用する場合:XMLから個々の要素を取得する場合は、 text()を使用する必要がありtext()

var test = doc.DocumentNode.SelectSingleNode("/html/body/table/tr/td/text()");

また、 tbodyを削除する必要があります。あなたのHTMLにtbodyはありません。




ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ