软件没有图形界面,打开之后只有一个命令提示符窗口。


使用方法:
<1> 手机微信扫码登陆
<2> 用手机发微信给自己,如“远程#截图”
<3> 程序会截屏,然后发回。
目前有的功能:
<1> “远程#帮助” --获取帮助信息
<2> “远程#截图” --截图发回
<3> “远程#关机” --电脑关机
<4> "远程#控制#explorer" --其中的“explorer”可以换成其他CMD命令
# -*- coding: utf-8 -*-
# 作者:Jenas
import os,time
import itchat # pip install itchat
from PIL import ImageGrab # pip install pillow
@itchat.msg_register(itchat.content.TEXT) # 封装好的装饰器,当接收到的消息是'TEXT'类型
def receive_wechat(msg):
'''接收微信指令,判断消息是否来自自己并且包含符号#,其中#前面的是指令暗号,#后面的是具体指令。'''
if msg['FromUserName'] == myUserName and '#' in msg['Text']:
password = msg['Text'].split('#',1)[0] # 以#来分割消息字符串1次,取第一个元素,即:暗号。
do_what = msg['Text'].split('#',1)[1] # 取第二个元素,即:指令。只分割一次,因为可能包括二级指令,如:远程#控制#explorer
wechat_do(password, do_what)
def wechat_do(password,do_what):
'''对暗号,然后执行指令'''
if password == '远程': # 对暗号
if '#' not in do_what: # 如果一级指令中不包含符号#,即:没有二级指令
print('接收到远程指令: '+do_what)
if do_what == '帮助':
read_me() # 发送帮助信息
elif do_what == '截图':
img_to_myself() # 发送截图给自己
elif do_what == '关机':
shutdown_pc() # 执行本机关机
elif '控制#' in do_what: # 如果一级指令中还有符号#,即:含有二级命令,格式如:远程#控制#explorer
control_command = do_what.split('#')[1] # 以#分割,取第二个元素,即:二级指令,如:explorer
print('接收到二级指令: ' + control_command)
control_pc(control_command) # 控制计算机执行相关指令
def read_me():
'''一级指令:帮助信息'''
readme_msg = '帮助信息:\n'
readme_msg += '远程#截图\n'
readme_msg += '远程#关机\n'
readme_msg += '远程#控制#explorer\n'
#print(readme_msg)
itchat.send(readme_msg, toUserName=myUserName) # 发送帮助信息
def img_to_myself():
'''一级指令:本机截图'''
print('执行截图……')
ImageGrab.grab().save(imgName) # 截图并保存,文件名在预设中设置
itchat.send_image(imgName, toUserName=myUserName) # 微信发送截图给自己
date_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())) #获取当前时间,并转格式
time_msg = '[%s]'%date_time # 编辑消息,这里是:时间外面加括号,可自定义。
itchat.send(time_msg, toUserName=myUserName) # 发送消息,截图时间
def shutdown_pc():
'''一级指令:本机关机'''
print('执行关机……')
os.system('shutdown -s -t 60') # 执行计算机系统指令,这里是60秒后关机
warning_msg = '60秒后关机,取消如下:\n远程#控制#shutdown -a' # 发送警告消息,提醒取消指令
itchat.send(warning_msg, toUserName=myUserName)
def control_pc(control_command):
'''二级指令,计算机执行系统指令,如:explorer是资源管理器,shutdown是关机命令,具体百度cmd命令大全'''
print('执行二级命令……')
try:
os.system(control_command)
except:
pass
if __name__ == "__main__":
itchat.auto_login(hotReload=True) # 扫码登陆微信
imgName = "my_screenshot.png" # 预设截图文件名
myUserName = itchat.get_friends(update=True)[0]["UserName"] # 获取微信中自己的UserName
read_me() # 发送帮助信息
itchat.run()
网友评论