为了躺在床上能够关掉电脑,用python写了个小程序。
原理:
关机代码
os.system('shutdown -s -t 1') #关机
在我要睡觉的时候给指定的邮箱发送 关机指令,当运行在电脑上的python程序获取到邮箱里面有新的信息,检测出信息为关机,执行关机代码。
代码的缩进好乱,依然是等有时间传github好了。
import poplib
import sys
import smtplib
from email.mime.text import MIMEText
import os
from email.header import decode_header
import email
import time
def Login_email():
try:
print("test")
p = poplib.POP3('pop.163.com')#创建一个连接pop.163.com的对象
p.user(xxx@163.com')
print('user')
p.pass_(xxxxxxx)
print('ps')
ret=p.stat()
print(ret)
print('Loh')
except:
print('Login failed!')
sys.exit(1)
str = p.top(ret[0], 0)
print(str)
strlist = []
for x in str[1]:
try:
strlist.append(x.decode())
except:
try:
strlist.append(x.decode('gbk'))
except:
strlist.append((x.decode('big5')))
mm=email.message_from_string('\n'.join(strlist))
sub = decode_header(mm['subject'])
print(sub)
if sub[0][1]:
submsg = sub[0][0].decode(sub[0][1])
print(submsg)
else:
submsg = sub[0][0]
if submsg.strip() == '关机':
return 0;
elif submsg.strip() == '重启':
return 1
p.quit()
if name == 'main':
while True:
time.sleep(20)
if Login_email()==0:
os.system('shutdown -s -t 1') #关机
break
if Login_email()==1:
os.system('shutdown -r') #重启
break
网友评论