python使用itchat实现手机控制电脑

yipeiwu_com6年前Python基础

本文实例为大家分享了python使用itchat实现手机控制电脑的具体代码,供大家参考,具体内容如下

1.准备材料

首先电脑上需要安装了python,安装了opencv更好(非必需)

如果安装了opencv的话,在opencv的python目录下找到cv2.pyd,将该文件放到python的库搜索路径就可以导入了

然后下载itchat:github

2.开始使用

下载了itchat后解压(建议先阅读该文件夹下的docs),然后在该文件夹下执行cmd命令来安装itchat库:

python setup.py install

接着可以执行demo程序:

#encoding:utf8
import itchat
import os
import time
#import cv2 #如果使用opencv的话可以远程拍照

sendMsg = u"[消息助手]:暂时无法回复" #自动回复内容
usageMsg = u"使用方法:\n1.运行CMD命令:cmd xxx (xxx为命令)\n-例如关机命令:\ncmd shutdown -s -t 0 \n2.获取一张图片:cap\n3.启用消息助手(默认关闭):ast\n4.关闭消息助手:astc"

@itchat.msg_register('Text') #注册文本消息

def text_reply(msg): #心跳程序
 global flag
 message = msg['Text'] #接收文本消息
 fromName =msg['FromUserName'] #发送方
 toName = msg['ToUserName'] #接收方

 if toName == "filehelper":
  if message == "cap": #远程拍照并发送到手机
   #cap=cv2.VideoCapture(0)
   #ret,img =cap.read()
   #cv2.imwrite("weixinTemp.jpg",img)
   #itchat.send('@img@%s'%u'weixinTemp.jpg','filehelper')
   #cap.release()
  if message[0]+message[1]+message[2] == "cmd": #远程执行cmd命令 
   os.system(message.strip(message[0]+message[1]+message[2]+message[3])) #远程执行cmd命令,可以实现关机
  if message == "ast":
   flag = 1
   itchat.send("消息助手已开启","filehelper")
  if message == "astc":
   flag = 0
   itchat.send("消息助手已关闭","filehelper")
 elif flag==1:
  itchat.send(sendMsg,fromName)
  myfile.write(message) #保存消息内容
  myfile.write("\n")
  myfile.flush()

flag = 0 #消息助手开关
nowTime = time.localtime()
filename =str(nowTime.tm_mday)+str(nowTime.tm_hour)+str(nowTime.tm_min)+str(nowTime.tm_sec)+".txt"
myfile = open(filename,'w')

if __name__ == '__main__':
 itchat.auto_login()
 itchat.send(usageMsg,"filehelper")
 itchat.run()

执行成功的话它会跳出一个二维码,使用微信扫码登录,然后就可以在手机通过微信的手机助手远程操作电脑了,使用opencv的目的是实现远程拍照,在以上的demo中已经将相关代码注释了。

其他:可以使用itchat实现微信机器人等有趣的功能,github中有较为详细的指导;如果想开机启动的话可以在任务计划里创建一个任务。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python的循环体中使用else语句的方法

本文讨论Python的for…else和while…else语法,这是Python中最不常用、最为误解的语法特性之一。 Python中的for、while循环都有一个可选的else分支(...

IronPython连接MySQL的方法步骤

原以为在IronPython中使用MySQL是一件很容易的事情,即使有麻烦,也可以改变路径,加载Python下的MySQL模块。事实证明,这是我一厢情愿的想法。要想在IronPython...

Python中一些不为人知的基础技巧总结

前言 本文主要给大家总结介绍了关于Python的一些基础技巧,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 1.startswith()和endswith()参数可以...

pyqt5 QProgressBar清空进度条的实例

在停止和开始进度条的同时,将进度条清空的动作也是常常需要用到的。 具体用法如下: self.progressBar = QProgressBar(self) self.progres...

用Python和MD5实现网站挂马检测程序

一、程序测试复制代码 代码如下:# python check_change.py     Usage: python check_change.py upd...