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 过滤字符串的技巧,map与itertools.imap

具体的实例 我们需要在目录中遍历,包括子目录(哈哈),找出所有后缀为:rmvb ,avi ,pmp 的文件。(天哪?!你要干什么?这可是我的隐私啊~~) 复制代码 代码如下:import...

python实现在无须过多援引的情况下创建字典的方法

本文实例讲述了python实现在无须过多援引的情况下创建字典的方法。分享给大家供大家参考。具体实现方法如下: 1.使用itertools模块 import itertools the...

Windows下Python的Django框架环境部署及应用编写入门

环境搭建 1、下载所需的软件包: (1)python安装包 (2)django安装包 以下2个包其实是安装python包管理工具,在后面安装django文档包模块时会用到,下载网站是py...

Python Pexpect库的简单使用方法

简介 最近需要远程操作一个服务器并执行该服务器上的一个python脚本,查到可以使用Pexpect这个库。记录一下。 什么是Pexpect?Pexpect能够产生子应用程序,并控制他们...

python中break、continue 、exit() 、pass终止循环的区别详解

python中break、continue 、exit() 、pass终止循环的区别详解

python中break、continue 、exit() 、pass区分 1、break:跳出循环,不再执行 Python break语句,就像在C语言中,打破了最小封闭for或...