1

所以,问题在于使用QWebEngineVieworQWebEnginePage或类似的东西。我有一个看起来像的链接 <a href="/salt">Salt</a>。我已经设法拦截单击此链接并强制QWebEngineView对其不执行任何操作,因为我所需要的只是在 python 控制台中打印此 url 的文本(“Salt”)而不是打开它。问题是我不知道如何实现它。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>我需要得到“盐”。

4

0 回答 0