python3关机函数 python shutdown 关机

python3判断电脑关机api执行py程序后,程序将每隔10分钟(时间可以自己设置)读取一次邮箱最新邮件,解析获得邮件主题,当主题为“关机”时,程序将关闭电脑,为“重启”时 , 将重启电脑 。在长时间离开电脑时,可以将py程序跑起来,如果需要关机或重启,可以向邮箱发一封邮件即可
代码
# -*- coding:utf-8 -*-
import os
import time
import poplib
import email
from email.header import decode_header
#========================================
# 读取Email,获取Email主题
#========================================
def getEmailSubject():
read = poplib.POP3('pop.163.com')
read.user('xxx@163.com')# 163邮箱用户名
read.pass_('xxx') # 163邮箱设置中的客户端授权密码
allEmails = read.stat() # 读取邮件信息
topEmail = read.top(allEmails[0], 0) # 获取最新的一封邮件
tmp = []
# 解码邮件,存入tmp
for s in topEmail[1]:
try:
tmp.append(s.decode())
except:
try:
tmp.append(s.decode('gbk'))
except:
tmp.append(s.decode('big5'))
message = email.message_from_string('\n'.join(tmp))
# 获取邮件主题
subject = decode_header(message['Subject'])
if subject[0][1]:
subjectDecode = subject[0][0].decode(subject[0][1])
else:
subjectDecode = subject[0][0]
return subjectDecode
#=========================================
# 检查Email的主题
#=========================================
def checkEmailSubject():
while True:
subject = getEmailSubject()
print('check subject ...')
print('subject is 'subject)
if subject == '重启':
os.system('shutdown -r -t 3')
break
if subject == '关机':
os.system('shutdown -s -t 3')
break
time.sleep(600) # 每10分钟检查一次
if __name__ == '__main__':
checkEmailSubject()
学而思Python关机代码新建一个文本python3关机函数 , 然后输入shutdown -s -t 1 即可 。
当我们想要获得关机代码时,首先我们需要在电脑桌面创建文本文档,名字随便起,把文档后面python3关机函数的.txt换成.bat(针对windows系统),然后打开文本文档输入:shutdown -s -t 1即可 。
python3 close函数无法关闭文件open("abc.txt","r")返回python3关机函数的是一个文件对象python3关机函数 , 而在文件对象上调用read()返回python3关机函数的是一个字符串对象python3关机函数,字符串对象自然没有close方法 。
建议使用上下文管理器来打开文件python3关机函数,无需人为close 。
with open("Automatic.txt") as txt:
ls = txt.read().split()
print(ls)
with open("abc.txt","w ") as fout:
fout.write(",".join(ls))
with open("abc.txt","r") as a:
n = a.read().split(",")
print(n)
pythonfor循环结束后关机你好python3关机函数,关于用程序来开机 , 是怎么做到python3关机函数的呢?这就是 WOL 技术 Wake-On-Lan, 利用计算机在关机或休眠状态时 , 网卡及主板部分仍然有微弱python3关机函数的供电,当然要保持电源是插上的,而且是有线连接 。所以即使在关机情况下,网卡还是有一定运作能力的,可以监听计算机外部的网上广播信息,当发现特定格式的信息后就会执行开机 。现在的主板基本都支持 。
只需要在网络适配器属性中配置下面两个选项
0.png
1.png
下图这个勾不能选上 , 我们要保证网卡在关机后仍有供电,如果你关机后,网口的灯不亮了,就不行了,要保持网口灯亮 。
2.png
这个特定数据也有个好听的名字叫 Magic Packet(魔法数据包) 。一般用过 UDP 协议进行广播 。端口一般是7或者9. 魔法数据包总是以"FF FF FF FF FF FF" 连续6个 "FF",后面是 MAC 地址信息,一旦网卡侦测到数据包内容,就会唤醒目标计算机 。
我们还是来看一下代码怎么写,代码涉及到 UDP 网络编程这块,后面会专门写写网络编程这块内容 。此函数只需输入目标计算机的 MAC 地址即可,在局域网中(当然,如果你的计算机有公网IP,那么在公网中也是可以的)另一台计算机上运行此程序,目标计算机即可自动开机 。
代码如下,代码本身很短,原理也很简单:
def wake_up(mac='DC-4A-3E-78-3E-0A'):
MAC = mac
BROADCAST = "192.168.0.255"
if len(MAC) != 17:
raise ValueError("MAC address should be set as form 'XX-XX-XX-XX-XX-XX'")
mac_address = MAC.replace("-", '')
datahttps://www.04ip.com/post/= ''.join(['FFFFFFFFFFFF', mac_address * 20]) # 构造原始数据格式
send_data = https://www.04ip.com/post/b''
# 把原始数据转换为16进制字节数组,
for i in range(0, len(data), 2):
send_data = https://www.04ip.com/post/b''.join([send_data, struct.pack('B', int(data[i: i2], 16))])
print(send_data)
# 通过socket广播出去,为避免失败,间隔广播三次
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(send_data, (BROADCAST, 7))
time.sleep(1)
sock.sendto(send_data, (BROADCAST, 7))
time.sleep(1)
sock.sendto(send_data, (BROADCAST, 7))
print("Done")
except Exception as e:
print(e)
Python 关机
【python3关机函数 python shutdown 关机】关于python3关机函数和python shutdown 关机的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读