JavaScript 获取整个网页的完整内容,包括 html 标签。

在软件开发过程中,可以使用以下代码来获取到 body 标签中的内容:

document.body.innerHTML

但上述方式无法获取到诸如 head、html 等 body 标签之外的元素内容。如果需要获取整个网页上完整的 html 内容,可以使用以下 JavaScript 代码:

document.documentElement.outerHTML

在 CefSharp 中获取网页的完整 HTML 输出

在 CefSharp 中,可以通过 ChromiumWebBrowser 类型的 GetSourceAsync 方法获取网页的源代码。该方法返回的字符串包含 html 标签,但不包含通过 JavaScript 动态渲染出的内容

如果想获取包含动态渲染的内容(比如采集场景下),可以通过运行 JavaScript 代码的方式实现:

public static async Task<string> GetDocumentHtml(ChromiumWebBrowser browser)
{
    var result = await browser.EvaluateScriptAsync("document.documentElement.outerHTML");
    if (result.Success)
    {
        return result.Result.ToString();
    }
    else
    {
        return await browser.GetSourceAsync();
    }
}


上一篇:Ubuntu 安装Gitlab


下一篇:ODB——基于c++的ORM映射框架尝试(安装)