PyQt5:如何在没有模块名称的情况下打印QUrl

时间:2017-11-10 19:28:19

标签: python text pyqt5 qurl

我正试图从网上抓取一个网址,但无论我做什么,它还会为QUrl打印整个模块:

import sys
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView

app = QApplication(sys.argv)
url = 'http://stackoverflow.com'
wv = QWebEngineView()

wv.load(QUrl(url))
print str(QUrl(url))
wv.show()
app.exec_()

给了我:

PyQt5.QtCore.QUrl(u'http://stackoverflow.com')

我只对抓取unicode字符串感兴趣,没有模块名称:

u'http://stackoverflow.com'

我知道我可以打印网址,但这只是为了在更大的应用中重现问题。

1 个答案:

答案 0 :(得分:1)

QUrl课程有一个专用的toString方法:

>>> u = QtCore.QUrl(u'http://stackoverflow.com')
>>> u.toString()
u'http://stackoverflow.com'

您还可以使用Formatting Options传递参数,该参数将修改网址的显示方式(例如,通过删除查询或删除尾部斜杠)。