微信实现秒回以及控制电脑

女朋友给你发微信,你能秒回吗?,尤其是在你敲代码敲到激情之时(emmmm,或者说杀的正爽时?),当然是 ———— 可以秒回的? ,才不屑于用图灵机器人什么的,我们程序员?自有办法,当然是可以实现 。
网上看了看,发现一个很有意思的库
大致看了一下介绍,发现十分有用
它既可以接收你的指令,还可以用.send(**, '')发送你需要的内容了,我们可以将输入的命令让电脑执行,并接收命令返回的内容?,这不就解决问题了这简直就是一个宝库,我们可以实现很多有趣的功能?
实现控制电脑的cmd命令 os.popen()
是你可以指定输入的指令
一般我们这样用
import oscommand ='help'output = os.popen(command)info = output.readlines()a=[]for line in info:a.append(line.strip('/r'))b=''.join(a)print(b)
指令可以自己改,当然你也可以在for循环里面直接输出line,不过会一行一行输出,不利于微信后端的获取和系统执行的效率,所以我们变成str类型,运行结果和在cmd的结果肯定是一样的,但是是以文字方式显示出来?
用这个能干什么呢,简单点,我们可以用来实现电脑的定时关机或者重启,举个栗子:1小时后自动关机,输入 -s -t 3600,其中-s是关机,-t是定时,3600是3600秒 。-r 是重启,往深了说,查看网络连接,端口协议等,也是轻而易举的(手动滑稽)
实时屏幕
这里用到了cv2库,首先说一下安装代码:pip-要切记切记不是pipcv2 ,我这里是3.6.5,也可能跟版本有关,安装是这样按,但是导入的时候我们用的是 cv2
【微信实现秒回以及控制电脑】原理是利用了cv2的屏幕捕捉,得到了电脑的实时屏幕,类似于截图的功能,说起来截图也可以使用win32,就是使用自带的程序,但是一张图片就4M左右,执行效率虽然说是比比cv2要高一点,但是作为用户,其实不容易感受到差别,所以我选用了cv2,大致思路如下,详细代码在最后放出
import cv2cap = cv2.VideoCapture(0)ret, img = cap.read()cv2.imwrite(filepath,img)cap.release()
查看文件和传输文件
查看文件用cmd的dir命令就可以查看,但是稍微复杂了一点,有些不懂命令的就不能直接使用了,所以把两个放出来写了,另外发送文件用.(,'')这里有个小建议,先把文件后缀名显示出来再用这个程序?
先说查看文件
def list_folders_files(path):list_folders = []list_files = []for file in os.listdir(path):file_path = os.path.join(path, file)if os.path.isdir(file_path):list_folders.append(file)else:list_files.append(file)return (list_folders, list_files)
使用这个函数就可以得到指定路径(path)下的所有文件夹和文件了
再说一下传输文件
newpath = path.encode("utf-8").decode("utf-8")itchat.send_file(newpath,'filehelper')
为什么要写第一句话呢?因为编码问题(令人特别特别头大的问题,在我另一个项目字频统计中也遇到了,但未解决??)感兴趣的可以在这查看之痛,简单的来说就是中文文字变成计算机可以识别的文字需要的步骤,但是这样还不行??,发送普通的英文文件是可以的,只要路径中有中文就不行,试了很久不行之后我看了看官方文档,发现了中文文件无法上传的办法
中文文件名文件上传
Q: 为什么中文的文件没有办法上传?
A: 这是由于的编码问题导致的 。若需要支持中文文件传输,.py (py3版本见这里)文件放入包的/下即可
提供链接
有的可能没有这个路径,建议用搜索一下.py这个文件然后再进行操作,注意:这一步如果未完成的话,程序中的传输文件可能会出问题