CefSharp文件完成

Bri*_*ean 3 c# chromium-embedded cefsharp

我正在尝试在C#winforms中使用cefshar浏览器,并且需要知道如何完全加载页面以及如何获取浏览器文档和html元素,

我只是初始化浏览器,不知道下一步该怎么做:

  public Form1()
        {


            InitializeComponent();
            Cef.Initialize(new CefSettings());
            browser = new ChromiumWebBrowser("http://google.com");
            BrowserContainer.Controls.Add(browser);
            browser.Dock = DockStyle.Fill;

        }
Run Code Online (Sandbox Code Playgroud)

Equ*_*lsk 8

CefSharp有一个带有的LoadingStateChanged事件LoadingStateChangedArgs

LoadingStateChangedArgs具有名为的属性IsLoading,该属性指示页面是否仍在加载。

您应该可以像这样订阅它:

browser.LoadingStateChanged += OnLoadingStateChanged;
Run Code Online (Sandbox Code Playgroud)

该方法如下所示:

private void OnLoadingStateChanged(object sender, LoadingStateChangedEventArgs args)
{
    if (!args.IsLoading)
    {
        // Page has finished loading, do whatever you want here
    }
}
Run Code Online (Sandbox Code Playgroud)

我相信您可以像这样获得页面源:

string HTML = await browser.GetSourceAsync();
Run Code Online (Sandbox Code Playgroud)

您可能需要掌握HtmlAgility之类的内容才能对其进行解析,但由于它不在主题之列,所以我将不予赘述