实现的效果为:当手机不在局域网内时,自动结束微信进程,可以防止微信聊天记录被偷窥。前提是手机需要连接wifi
from os import system as run
from os import popen as echo
from time import sleep
from sys import exit
from arrow import now
def Wechat_onlie():
for i in echo('tasklist'):
if 'WeChat.exe' in i:
return True
return False
def Tel_onlie():
ip = '192.168.0.123' #手机对应的固定ip地址【在路由器内将手机MAC和IP地址绑定】
ls = [i.strip() for i in echo('ping /n 2 ' + ip) if len(i) > 1]
total = ''.join(ls)
if total.count('TTL=') > 0: #有 TTL= 字样 表示手机在局域网内
return True
return False
def Count_tel_offline(cishu): #每3秒钟检测一次,然后返回不在线次数
n = 0
for i in range(cishu):
print(f'第{i+1}次检测...')
if not Tel_onlie():
n += 1
sleep(0.5)
return n
if __name__ == '__main__':
thistime = now().format('YYYY-MM-DD HH:mm')
jc = 'WeChat.exe 进程'
if not Wechat_onlie():
print(f'无 {jc} ,直接退出')
exit()
else:
print(f'有 {jc}')
cishu = 5
jiance = Count_tel_offline(cishu)
if jiance > 0: #如果有一次不在线,就结束微信进程
t = f'{thistime}\t结束微信进程'
print(t)
for j in range(3):
for i in 'Wechat_Browser WeChatPlayer WeChat'.split():
run(f'taskkill /f /im {i}.exe')