C# 如何在HTML中查找标记的xPath
请帮我解决这个问题:(, 我正在使用C#的BrowserControl,我有一个如下的html文档文件:C# 如何在HTML中查找标记的xPath,c#,html,xpath,xhtml,C#,Html,Xpath,Xhtml,请帮我解决这个问题:(, 我正在使用C#的BrowserControl,我有一个如下的html文档文件: <html> <title> news </title> <body> <br> <br/> <ul> <li>Coffee</li> <li>Tea <ul> <li>Black tea</li>
<html>
<title>
news
</title>
<body>
<br>
<br/>
<ul>
<li>Coffee</li>
<li>Tea
<ul>
<li>Black tea</li>
<li>Green tea</li>
</ul>
</li><li>Milk</li>
<li>Milk2</li>
</ul>
</body>
</html>
新闻
- 咖啡
- 茶
- 红茶
- 绿茶
- 牛奶
- 牛奶2
当我的鼠标点击红茶时,我如何获得这个标记的xPath?通过使用C#的BrowserControl,我只获得innerHTML或OuterHTML或鼠标当前位置的文本。你不能用你拥有的代码通过编程获得这个标记的xPath。事实上,你必须自己构建xPath。但是如果你用这个,他应该是微不足道的 HTML Agility pack允许您加载HTML文档(通常不是格式良好的XML),就好像它是格式正确的XML一样,并对其使用XPath查询。然后,您可以在HTML Agility pack中加载文档,以编程方式搜索节点(例如,使用XPath搜索包含特定字符串的元素),然后当您从搜索中获得节点时,可以通过遍历每个父节点来构建XPath 总之:
<li>Black Tea</li>
//Name[contains(., Contents)]
(在本例中,//li(,“红茶”))html/body/ul/li/ul/li
这有帮助吗?您无法使用现有代码以编程方式获取此标记的XPath。事实上,您必须自己构建XPath。但是,如果您使用 HTML Agility pack允许您加载HTML文档(通常不是格式良好的XML),就好像它是格式正确的XML一样,并对其使用XPath查询。然后,您可以在HTML Agility pack中加载文档,以编程方式搜索节点(例如,使用XPath搜索包含特定字符串的元素),然后当您从搜索中获得节点时,可以通过遍历每个父节点来构建XPath 总之:
<li>Black Tea</li>
//Name[contains(., Contents)]
(在本例中,//li(,“红茶”))html/body/ul/li/ul/li