当前位置:   article > 正文

玩转python(一)——微信远程控制电脑_python 手机远程控制

python 手机远程控制

 

  • 1. 综述

         这是一个挺有意思的 python 程序,基于 itchat 实现微信控制电脑。你可以通过在微信发送命令,来拍摄当前电脑的使用者,然后图片会发送到你的微信上。甚至你可以发送命令来远程关闭电脑。效果如下图所示:

  • 2.应用场景

       你可爱又迷人的女朋友,在看到这篇教程之后,非常的开心。在你的电脑上部署了这个脚本,并且在你不知情的情况下,默默的登录上。随后跟你说我出去跟闺蜜逛街啦,今天就不陪你了。要记得不准吃鸡。


        你心想老子终于可以放松一天了!开心的吃鸡!口上说着:“好的!亲爱的玩得开心!”等着女朋友出门以后,你就开启了吃鸡模式,在绝地求生里大开杀戒。

         你的女朋友早已对你了如指掌,通过脚本,先让电脑截图留下现场证据,随后再打电话质问你是否在吃鸡,你如果撒谎就把电脑远程关机。

        最后你想了下不对我没有女朋友啊,随后你转头微笑地看着你的室友。


3. 程序思路

        此次程序使用的环境是 python2 or python3 + windows or linux,在运行程序之前请先确保你已经安装好了 opencv-python 和 itchat。通过 pip install 即可安装。(我是用pyCharm开发环境的,安装这些模块很方便,看下图所示



         程序主要是通过使用 itchat 库来登录到微信网页端,然后通过 itchat 来发送消息和接收消息。并通过 opencv 来调用电脑的摄像头,把当前使用电脑的用户拍照下来,发送到你的微信上。至于远程关机是通过调用 os 库,发送 cmd 命名即可实现。


4. 程序源码

  1. #coding=utf-8
  2. import itchat
  3. import os
  4. import time
  5. import cv2
  6. sendMsg = u"{消息助手}:暂时无法回复"
  7. usageMsg = u"使用方法:\n1.运行CMD命令:cmd xxx (xxx为命令)\n" \
  8. u"-例如关机命令:\ncmd shutdown -s -t 0 \n" \
  9. u"2.获取当前电脑用户:cap\n3.启用消息助手(默认关闭):ast\n" \
  10. u"4.关闭消息助手:astc"
  11. flag = 0 #消息助手开关
  12. nowTime = time.localtime()
  13. filename = str(nowTime.tm_mday)+str(nowTime.tm_hour)+str(nowTime.tm_min)+str(nowTime.tm_sec)+".txt"
  14. myfile = open(filename, 'w')
  15. @itchat.msg_register('Text')
  16. def text_reply(msg):
  17. global flag
  18. message = msg['Text']
  19. fromName = msg['FromUserName']
  20. toName = msg['ToUserName']
  21. if toName == "filehelper":
  22. if message == "cap":
  23. cap = cv2.VideoCapture(0)
  24. ret, img = cap.read()
  25. cv2.imwrite("weixinTemp.jpg", img)
  26. itchat.send('@img@%s'%u'weixinTemp.jpg', 'filehelper')
  27. cap.release()
  28. if message[0:3] == "cmd":
  29. os.system(message.strip(message[0:4]))
  30. if message == "ast":
  31. flag = 1
  32. itchat.send("消息助手已开启", "filehelper")
  33. if message == "astc":
  34. flag = 0
  35. itchat.send("消息助手已关闭", "filehelper")
  36. elif flag == 1:
  37. itchat.send(sendMsg, fromName)
  38. myfile.write(message)
  39. myfile.write("\n")
  40. myfile.flush()
  41. if __name__ == '__main__':
  42. itchat.auto_login()
  43. itchat.send(usageMsg, "filehelper")
  44. itchat.run()


         程序并不复杂,定义了一些发送的消息,然后通过调用 itchat 和 cv2 相关库的操作,即可实现。关于 itchat 库的一些操作,可以去网上找相关的文档。
 


5. 使用教程
 

1)获取源代码,然后在你的电脑上运行。

2)随后会弹出一个微信网页登录的二维码。


 3)使用你的手机微信扫描登录,等待一会儿,微信文件助手就会收到相应操作信息。

发送消息「cmd shutdown -s -t 0」即可让当前的电脑关闭。
发送消息「cap」即可调用电脑摄像头拍摄当前用户,然后把图片发送到微信上。
当然 cmd 命名还可以做更多有趣的事,大家可以自己去网上搜索下。


这波骚操作学会了吗?

补充个问题:当发送开启消息助手时的命令:ast,执行代码

itchat.send("消息助手已开启", "filehelper")时

会出现编码错误:UnicodeDecodeError: 'ascii' codec can't decode byte 0x8b in position 6: ordinal not in range(128)

  • 解决方案:在代码最前面导入包时,加入:
  1. import sys
  2. reload(sys)
  3. sys.setdefaultencoding('utf8')
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/442427
推荐阅读
相关标签
  

闽ICP备14008679号