当前位置 主页 > 服务器问题 > Linux/apache问题 >

    python实现远程控制电脑

    栏目:Linux/apache问题 时间:2019-10-13 14:51

    python远程控制电脑的具体代码,供大家参考,具体内容如下

    python拥有大量的第三方库,且语法简单。今天老杨就用python实现远程控制电脑

    所谓,谋定而后动,在实现任何一个需求之前,我们需要先分析,捋清楚一个思路,远程控制电脑,无非就是接收远程的命令和根据命令去执行对应的操作。那这里,我们借助微信来接收命令,利用我们的一个itchat库实现远程控制电脑

    按上所说,我们要完成需求,无非是把任务细分,首先,接收到消息指令,再根据对应的指令执行相对应的操作,其中我们需要考虑一个问题就是误触问题。

    python有大量的第三方库,这里我们借助itchat这个第三方库

    首先通过pip进行第三方库的安装

    pip install itchat

    引入第三方库

    ​import itchat

    开始代码,不管三七二十一,先来个标准套路:

    def main():
     pass
    if __name__=='__main__':
     main()

    让微信运行

    import itchat
    def main():
     # 登录微信 避免重复扫码 热加载
     itchat.auto_login(hotReload=True)
     # 微信运行起来
     itchat.run()
    if __name__=='__main__':
     main()

    接收微信消息,获得指令,执行操作

    import os
    @itchat.msg_register('Text')
    def main(msg):
     message = msg['Text']
     if message == '关机':
      os.system('shutdown /s /t 0')

    大概思路已经得知,接下来我们应该做更多优化,比如解决误触等问题

    完整代码如下:

    import itchat
    import os
    import cv2
    @itchat.msg_register('Text')
    def main(msg):
     message = msg['Text'].strip()
     ToUserName = msg['ToUserName']
     FromUserName = msg['FromUserName']
     if FromUserName == ToUserName:
     tip = '输入 on 开启操控 默认是关闭的'
     itchat.send(tip,'filehelper')
     if ToUserName == 'filehelper':
     control(message)
    flag = False
    def control(message):
     global flag
     if message == 'on':
     tip = '现在可以开始操控了 输入关机 或者输入 拍照'
     itchat.send(tip,'filehelper')
     flag = True
     if message == 'off':
     tip = '现在已经操控了 输入 on 打开操控'
     itchat.send(tip,'filehelper')
     flag = False
     if flag == True:
     if message == '关机':
      cmd()
     elif message == '拍照':
      img()
    def cmd():
     os.system('shutdown /s /t 0')
    def img():
     cap = cv2.VideoCapture(0)
     ret ,img = cap.read()
     filename = 'wechat.jpg'
     cv2.imwrite(filename,img)
     cap.release()
     itchat.send_image(filename,'filehelper')
    def main():
     itchat.auto_login(hotReload=True)
     itchat.run()
    if __name__=='__main__':
     main()

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。