从QWebEnginePage

时间:2017-10-23 14:59:22

标签: python hyperlink click pyqt5 qwebenginepage

所以,问题是使用QWebEngineViewQWebEnginePage,或类似的东西。我的链接看起来像<a href="/salt">Salt</a>。我已经设法拦截点击此链接并强制QWebEngineView不对它执行任何操作,因为我需要的是在python控制台中打印此URL的文本(&#34; Salt&#34;)打开它。问题是我对如何实现它没有任何想法。 PyQt4中有linkHovered()信号,当鼠标悬停在链接上时,它会返回链接的标题,文本和URL。在PyQt5中,它只返回url。有什么想法吗?

一些代码:

class MyWebEnginePage(QWebEnginePage):
    link_clicked = pyqtSignal(str)
    def acceptNavigationRequest(self, url, nav_type, is_frame):
        if nav_type == 0:
            self.link_clicked.emit(str(url))
            return False
        else:
            return True

self.page.link_clicked.connect(self.LEchange)

def LEchange(self,url):
    print(url)

打印:

PyQt5.QtCore.QUrl('file:///C:/salt')

但是如果链接看起来像<a href="/salt">Salt</a>我需要得到&#34; Salt&#34;。

0 个答案:

没有答案