gpt4 book ai didi

html - CefSharp 和框架,仅从第一帧检索 HTML

转载 作者:搜寻专家 更新时间:2023-10-31 22:05:38 30 4
gpt4 key购买 nike

pcpao.org/general.php?strap=152814186280001650

在尝试从该站点获取完整的 HTML 时,.GetSourceAsync 和 .ViewSource 都只显示“框架集”HTML。使用 ShowDevTools 选项,完整的 HTML 数据位于元素集合和 Chrome-devtools 的源代码中。

我在网页加载后运行它,但它应该仍然存在,因为它在开发工具中?

要从导航站点中获取完整的 HTML,我缺少什么?我怀疑这与框架有关,但经过一个小时的谷歌搜索和阅读旧消息后,我看到这只是切线提到的。

窗体

  package id="cef.redist.x64" version="3.2526.1362" targetFramework="net46"
package id="cef.redist.x86" version="3.2526.1362" targetFramework="net46"
package id="CefSharp.Common" version="47.0.3" targetFramework="net46"
package id="CefSharp.WinForms" version="47.0.3" targetFramework="net46"

最佳答案

我在尝试点击位于框架中而不是位于主框架中的项目时遇到了同样的问题。使用您回答中的示例,我编写了以下扩展方法:

public static IFrame GetFrame(this ChromiumWebBrowser browser, string FrameName)
{
IFrame frame = null;

var identifiers = browser.GetBrowser().GetFrameIdentifiers();

foreach (var i in identifiers)
{
frame = browser.GetBrowser().GetFrame(i);
if (frame.Name == FrameName)
return frame;
}

return null;
}

如果您的表单上有一个包含此方法的模块的“using”,您可以执行如下操作:

var frame = browser.GetFrame("nameofframe");
if (frame != null)
frame.EvaluateScriptAsync("document.getElementById('whateveridyouwanttoclick').click();");

当然在使用这个之前你需要确保页面加载完成,但我打算经常使用它。希望对您有所帮助!

关于html - CefSharp 和框架,仅从第一帧检索 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36105240/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com