1

/html/body/center/table/tbody/tr[5]/td[3]/font/font/span 次のxpathを使用して、特定のノードのInnerTextを取得しようとし ています。
doc.DocumentNode.SelectSingleNode("/html/body/center/table/tbody/tr[5]/td[3]/font/font/span").InnerText

しかし、代わりに、次のxpathを使用してInnerTextを返します。 /html/body/center/form/table/tbody/tr[5]/td[3]/font/font/span

私は何か間違いを犯していますか?Xpathをより具体的にする必要がありますか?もしそうなら、より具体的にする方法を指定して私を助けてください。

4

1 に答える 1

2

誤って記述されたHTMLを修正するためのタグの処理に関して、既知の動作に遭遇しています。HTML Agility Pack Webサイトでこれを追跡するバグがあり、幸いなことに、これに対する回避策があります。

        HtmlDocument doc = new HtmlDocument();
        // v== Add this line before loading a document
        HtmlNode.ElementsFlags.Remove("form"); 
        doc.Load("doc.html");
于 2013-01-07T20:47:17.050 に答える