python+itchat實現遠端控制電腦
阿新 • • 發佈:2018-11-27
專案環境
語言:Python3
編輯器:Pycharm
導包:PIL、cv2
應用場景
你可以通過在微信傳送命令,來拍攝當前電腦的使用者,擷取當前電腦螢幕,然後圖片會發送到你的微信上。也可以傳送cmd命令來控制電腦進行其他操作。
程式思路
程式主要是通過使用 itchat 庫來登入到微信網頁端,然後通過 itchat 來發送訊息和接收訊息。並通過 opencv 來呼叫電腦的攝像頭,把當前使用電腦的使用者拍照下來,傳送到你的微信上。呼叫PIL獲取螢幕截圖。呼叫 os 庫,傳送 cmd 命令來遠端控制電腦。
程式原始碼
# coding=utf-8
import itchat
import os
import cv2
from PIL import ImageGrab
usageMsg = u"使用方法:\n1.執行CMD命令:cmd xxx (xxx為命令)\n" \
u"例如關機命令:\ncmd shutdown -s -t 0 \n" \
u"2.獲取攝像頭並拍照:cap\n" \
u"2.獲取螢幕截圖:pc\n" \
@itchat.msg_register('Text')
def handler_receive_msg(msg): # 處理收到的訊息
message = msg['Text' ]
toName = msg['ToUserName']
path = 'E:/sample/temp.jpg' # 臨時儲存截圖圖片地址
if toName == "filehelper":
if message == "cap": # 拍照
# 要使用攝像頭,需要使用cv2.VideoCapture(0)建立VideoCapture物件,
# 引數:0指的是攝像頭的編號。如果你電腦上有兩個攝像頭的話,訪問第2個攝像頭就可以傳入1
cap = cv2.VideoCapture(0)
ret, img = cap.read() # 獲取一幀
cv2.imwrite("temp.jpg", img)
itchat.send('@[email protected]%s' % u'temp.jpg', 'filehelper')
cap.release() # 釋放資源
if message[0:3] == "cmd": # 處理cmd命令
os.system(message.strip(message[0:4]))
if message == "pc": # 截圖
im = ImageGrab.grab() # 實現截圖功能
im.save(path, 'JPEG') # 設定儲存路徑和圖片格式
itchat.send_image(path, 'filehelper')
if __name__ == '__main__':
itchat.auto_login()
itchat.send(usageMsg, "filehelper")
itchat.run()
執行
更多內容歡迎大家關注