PyQt5 + QtWebEngine 获取 html 元素?
Posted
技术标签:
【中文标题】PyQt5 + QtWebEngine 获取 html 元素?【英文标题】:PyQt5 + QtWebEngine get html element? 【发布时间】:2017-03-16 03:43:51 【问题描述】:大家!我想将我的项目从 Qt WebKit 移植到 Qt WebEngine!目前我想获取html元素。
我使用 PyQt5 + QT 5.8。
我的获取元素函数:
def get_elment(self,selector,func):
js = '''
function r()
var button = document.querySelector("%s");
return button;
r();
'''%selector
self.wp.runjavascript(js,func)
我用它:
def print_element(e):
print "e:%s"%e
browser.get_elment('#u1 > a:nth-child(1)',print_element)
我希望 e 应该是一个 html 元素,但它是一个 dict。 结果:
我在网上搜索,但找不到解决方案。谁能帮我 ?非常感谢!
【问题讨论】:
你不能这样做。 Qt WebEngine 中没有与QWebElement
等效的功能。所有 DOM 操作都必须在 Javascript 中完成。
@ekhumoro 好的!谢谢!
【参考方案1】:
感谢@ekhumoro。
Qt WebEngine 中没有与 QWebElement 等价的东西。所有 DOM 操作都必须在 Javascript 中完成。
【讨论】:
以上是关于PyQt5 + QtWebEngine 获取 html 元素?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 python 和 QtWebEngine 中启用 allowGeolocationOnInsecureOrigins