他の方法ですでに見つけた明示的なXPathで単一のノードを取得するのに問題があります。ノードがあり、そのXPathを取得できますが、今回もnode.XPathを介して同じノードを取得しようとすると、「式はノードセットに評価される必要があります」というエラーが発生します。これはうまくいかないのですか?HtmlDocumentにはC#btwでHtmlAgilityPackを使用しています。
HtmlDocument doc = new HtmlDocument();
doc.Load(@"..\..\test1.htm");
HtmlNode node = doc.DocumentNode.SelectSingleNode("(//node()[@id='something')])[first()]");
HtmlNode same = doc.DocumentNode.SelectSingleNode(node.XPath);
ところで:これはnode.XPathの値です:
"/html[1]/body[1]/table[1]/tr[1]/td[1]/div[1]/div[1]/div[2]/table[1]/tr[1]/td[1]/div[1]/div[1]/table[1]/tr[1]/td[1]/div[1]/div[1]/div[4]/div[2]/div[1]/div[1]/div[4]/#text[2]"