欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python+itchat实现远程控制电脑

程序员文章站 2024-01-15 15:08:34
...

项目环境

语言: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('@aaa@qq.com%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()

运行

python+itchat实现远程控制电脑
python+itchat实现远程控制电脑
更多内容欢迎大家关注
python+itchat实现远程控制电脑