【发布时间】:2018-06-28 19:49:10
【问题描述】:
我正在尝试使用QtNetwork 以艰难的方式检查网络连接,但无法弄清楚如何正确执行此操作。这是我正在处理的代码,似乎既没有调用finished 也没有调用error 信号。我在这里缺少什么?
import sys
from PyQt5 import QtCore, QtNetwork, QtWidgets
class CheckConnectivity:
def __init__(self):
url = QtCore.QUrl("https://www.google.com/")
req = QtNetwork.QNetworkRequest(url)
net_manager = QtNetwork.QNetworkAccessManager()
self.res = net_manager.get(req)
self.res.finished.connect(self.processRes)
self.res.error.connect(self.processErr)
self.msg = QtWidgets.QMessageBox()
def processRes(self):
if self.res.bytesAvailable():
self.msg.information(self, "Info", "You are connected to the Internet.")
else:
self.msg.critical(self, "Info", "You are not connected to the Internet.")
self.msg.show()
self.res.close()
def processErr(self, *args):
print(*args)
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
ic = CheckConnectivity()
sys.exit(app.exec_())
【问题讨论】:
标签: python pyqt pyqt5 qtnetwork