所以,问题在于使用QWebEngineView
orQWebEnginePage
或类似的东西。我有一个看起来像的链接 <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>
我需要得到“盐”。