- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用QtWebKit(QWebView,QWebFrame等)从HTML页面检索数据。我工作的HTML页面具有iframe。我正在获取页面源的所有元素,除了iframe下的元素。
我使用的代码是:
view->load(QUrl("http://admin:admin@172.16.5.197"));
...
...
frame = view->page()->mainFrame();
QWebFrame* iframe = frame->findFirstElement("body table tbody tr td div table tbody tr:nth-child(2) td:nth-child(2) iframe").webFrame();
qDebug()<<iframe->toHtml();
....
....
<iframe width="100%" height="100%" frameborder="no" scrolling="no" noresize="noresize" src="bannar.html" id="topFrame" name="topFrame" title="topFrame"></iframe>
....
....
<iframe width="100%" height="100%" frameborder="no" scrolling="no" noresize="noresize" src="menu_cronos.html" id="leftFrame" name="leftFrame" title="leftFrame" style="background:#000000"></iframe>
....
....
最佳答案
看到这篇文章:
http://myprogrammingnotes.com/get-qwebframe-iframe.html
您可能认为在Web页面中获取iframe元素的QWebFrame对象很容易,因为QWebFrame是由iframe / frame(http://doc.qt.io/qt-5/qwebview.html)组成的,并且必须有一个函数或方法才能获取iframe的QWebFrame对象。不幸的是,这不是一件微不足道的工作。您无法基于iframe的ID获取iframe的QWebFrame,也无法从iframe的QWebElement获取QWebFrame。 QWebFrame具有childFrames函数,可以列出主框架的所有子框架。要获取特定iframe的QWebFrame,您应该遍历主框架的所有子框架,并将子框架的属性与某个指定值进行比较,以挑选出iframe。例如,以下代码将选择网址包含字符串“ myiframeurl”的iframe;
foreach(QWebFrame*childframe,frame->childFrames())
{
if(childframe->url().toString().contains("myiframeurl"))
{
yourframe = childframe;
break;
}
}
关于c++ - QWebFrame没有在iframe下获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158017/
我正在尝试将 html 内容动态设置到主线程中的文档节点。 QWebElement dynamicContent = ui->webView->page()->main
我在我的代码中的一个地方调用 QWebFrame::evaluateJavaScript 但它没有任何效果。但是,如果我用 setTimer(0) 调用替换此调用,并且当此计时器超时时将调用原始函数,
我正在使用 QtWebkit 在 C++/Qt 中实现浏览器。当我在其中使用 QWebView 实例打开一个新选项卡并使用 load() 加载 URL 时,页面正常加载,但是当它是我使用 cookie
我需要访问 QWebFrame 中的 javascript QScriptEngine。这可能吗? 好吧,至少我认为我需要访问它。为了响应 javascript 调用,我需要分配一个新对象,将其返回给
我已经开始再次深入研究 C++ 和 Qt,并且一直在研究 WebKit Javascript/Qt 绑定(bind)。我已经让所有移动部件正常工作,除了我的 QObject 子类在 Javascrip
我正在使用 QWebView 作为网站加载,然后从中获取 currentFrame()。之后,我尝试获取类为 comment-text 的 div。这是我这样做的方式:部分输入 HTML:
我有使用 QtWebkit 的简单 Qt GUI 应用程序。我正在加载带有很多嵌套 IFRAME 标签的复杂页面。我想遍历完整的 DOM 树(就像 Chrome 浏览器在调试面板中所做的那样),包括
我正在利用 QWebFrame 中的 WebKit 将 HTML 页面转换为 PDF。是否可以在页面发送到 QPrinter 之前应用一些额外的渲染逻辑? 我想要做的是能够将 HTML 中的链接和表单
我正在开发一个使用修改后的QWebView的项目。我收到此错误: Traceback (most recent call last): File "/home/jorge/coders/unive
我是一名优秀的程序员,十分优秀!