ChromiumWebBrowser 如何获取页面元素
时间: 2023-10-06 14:06:41 浏览: 180
ChromiumWebBrowser 是基于 Chromium 内核的浏览器控件,可以在 .NET 应用程序中嵌入浏览器功能。如果你想获取页面元素,可以使用以下方法:
1. 通过获取 DOM 节点的方式获取页面元素,例如:
```csharp
// 获取页面中 id 为 "test" 的元素
var element = await browser.GetBrowser().MainFrame.EvaluateScriptAsync("document.getElementById('test');");
```
2. 使用 JavaScript 执行代码来获取页面元素,例如:
```csharp
// 获取页面中 body 元素的 HTML
var result = await browser.EvaluateScriptAsync("document.body.innerHTML");
if (result.Success && result.Result != null)
{
var html = result.Result.ToString();
}
```
3. 使用 CefSharp 提供的 API 来获取页面元素,例如:
```csharp
// 获取页面中第一个 a 标签的 href 属性值
var link = await browser.GetMainFrame().EvaluateScriptAsync("document.querySelector('a').href;");
if (link.Success && link.Result != null)
{
var href = link.Result.ToString();
}
```
需要注意的是,在使用 ChromiumWebBrowser 获取页面元素时,必须确保已经加载了页面内容,否则获取的结果会为空。