pyqt5中時間插件
獲取當前時間QDateTime.currentDateTime(),當然也可以用datetime
獲取當前主機性能狀態的模塊
1.psutil模塊
2.psutil.boot_time()可以獲取到當前電腦的啓動時間點
3.psutil.virtual_memory() 可以去獲取到當前主機的內存信息
獲取網絡相關的模塊
ping3模塊
ping3模塊的ping()函數可以對指定IP發起ping請求,並返回延遲時間,數據類型爲float,相應可以轉換爲ms
zmq的使用
client端
import zmq from zmq.backend.cython.constants import SUBSCRIBE, SUB # 創建上下文 context = zmp.Context() # 創建套接字及模式選擇 socket = context.socket(SUB) socket.connect('ip & port') # 設置過濾器 socket.setsockopt_string(SUBSCRIBE, '') print('connected') while True: print(socket.recv_pyobj()) time.sleep(1)
server端
import zmq import time from zmq.backend.cython.constants import PUB context = zmq.Context() socket = context.socket(PUB) print('connecting') socket.bind('tcp://127.0.0.1:10086') print('connected') while True: socket.send_pyobj('你好啊') time.sleep(1)
獲取視頻流併發送
from imutils.video import VideoStream from collections import deque 獲取網絡攝像頭的地址、賬號、密碼,實例化視頻流對象camera = VideoStream(cam_url) 獲取每一幀圖片:img = camera.read() 採用隊列進行傳輸deque().append(img)
接受視頻流發送過來的圖像幀
from collections import deque import cv2 使用相同的隊列收取圖片信息 img = deque().popleft() 原幀圖片被cv2處理後生成新數據 color_swapped_image = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) 在QT中的QImage進行渲染 self.img = QtGui.QImage(color_swapped_image.data, width, height, color_swapped_image.strides[0], QtGui.QImage.Format_RGB888).scaled(self.width, self.height) 然後執行self.repaint()進行頁面重畫
獲取主機顯示器的分辨率
import ctypes
user32 = ctypes.windll.user32
screensize = user32.GetSystemMetrics(0), user32.GetSystemMetrics(1)