如何在没有 WebBrowser 控件的情况下“呈现”HTML
本文关键字:情况下 呈现 HTML 控件 WebBrowser | 更新日期: 2023-09-27 18:34:00
首先 - 我不知道"渲染"是否是正确的词。我喜欢从网站获取信息。因此,目前我使用WebBbrowser控件。现在我喜欢使用HttpWebRequests,因为我认为,这要快得多,线程可以更容易地使用。但我不能使用它们,因为我从 HttpWebRequest 收到的 HTML 输出字符串有很多 JavaScript,我需要的信息将从中创建。Web浏览器将JavaScript"渲染"为可读的HTML。如何"手动"完成此步骤,以便我可以使用 HttpWebRequests?
我希望你明白,我想要什么。
所以
如果你需要JavaScript渲染引擎,我建议你看看Selenium项目。
我用一个名为Awesomium的项目解决了我的问题。在这个线程中,您将找到使用执行的javascript获取html所需的一切。"特殊部分"是这个:
var sourceVal = webView.ExecuteJavascriptWithResult( "document.getElementsByTagName('html')[0].outerHTML;" );
if ( sourceVal != null )
{
using ( sourceVal )
{
html = sourceVal.ToString();
}
}