【问题标题】:CefSharp documentcompletedCefSharp 文档完成
【发布时间】:2017-06-18 12:44:06
【问题描述】:

我正在尝试在 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;

        }

【问题讨论】:

  • 阅读一般使用指南,Google CefSharp 一般使用。它在维基上

标签: c# chromium-embedded cefsharp


【解决方案1】:

CefSharp 有一个带有LoadingStateChangedArgsLoadingStateChanged 事件。

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

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

browser.LoadingStateChanged += OnLoadingStateChanged;

该方法如下所示:

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

相信你可以这样获取页面源:

string HTML = await browser.GetSourceAsync();

您可能需要掌握HtmlAgility 之类的东西来解析它,因为它不在主题范围内,所以我不打算讨论。

【讨论】:

  • 感谢这真的很有帮助
猜你喜欢
  • 1970-01-01
  • 2013-07-12
  • 1970-01-01
  • 1970-01-01
  • 2011-08-17
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
相关资源
最近更新 更多