导航和WebBrowser控件

7

我可以使用XPath表达式在WebBrowser控件中导航DOM元素吗?也许附加JavaScript代码并使用document.evaluate函数是正确的方法?

另一个ActiveX浏览器组件(如Firefox、webkit.net)可以帮助我解决我的任务吗?

1个回答

7
微软WebBrowser控件是对微软的COM网络浏览器控件的托管包装器,就我所知。因此,在底层,它使用的是与IE相同的呈现和DOM实现,称为MSHTML。由于它不支持针对其HTML DOM的XPath,也不支持“evaluate”方法(这是W3C DOM Level 3 XPath的一部分),所以我不认为有办法对加载在Microsoft的WebBrowser控件中的HTML文档执行XPath查询。 是否存在基于其他浏览器的第三方.NET Web浏览器控件,支持针对HTML DOM的XPath,我不知道。
如果您想使用.NET对HTML文档执行XPath,则可以使用HTML Agility Pack。然而,它与WebBrowser控件无关,因此您无法使用它来导航在WebBrowser控件中加载的HTML文档,而是必须使用单独的实现。

+1,感谢您的回答。我正在使用敏捷包,但我需要在HTML中导航(我必须选择/突出显示特定节点)。有其他替代方案吗?任何东西? - Shimmy Weitzhandler

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接