python實(shí)現(xiàn)電腦自動(dòng)關(guān)機(jī)代碼詳解
電腦設(shè)置自動(dòng)關(guān)機(jī)方法有很多種,可以借助軟件,利用系統(tǒng)命令,bat腳本等等,如果是程序員,還可以用Python實(shí)現(xiàn),那么具體步驟代碼是什么呢?感興趣的一起看看!
1、準(zhǔn)備
python: 3.5.2 email:163郵箱 system:Win10
安裝依賴包email:在python安裝目錄下/Scripts下執(zhí)行:pip install email
設(shè)置163郵箱的POP3/SMTP服務(wù) : 登錄163郵箱 –> 設(shè)置 –> POP3/SMTP/IMAP –> 勾選POP3/SMTP服務(wù)
2、說(shuō)明
執(zhí)行py程序后,程序?qū)⒚扛?0分鐘(時(shí)間可以自己設(shè)置)讀取一次郵箱最新郵件,解析獲得郵件主題,當(dāng)主題為“關(guān)機(jī)”時(shí),程序?qū)㈥P(guān)閉電腦,為“重啟”時(shí),將重啟電腦。在長(zhǎng)時(shí)間離開(kāi)電腦時(shí),可以將py程序跑起來(lái),如果需要關(guān)機(jī)或重啟,可以向郵箱發(fā)一封郵件即可
3、代碼
# -*- 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郵箱設(shè)置中的客戶端授權(quán)密碼
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 == '關(guān)機(jī)':
os.system('shutdown -s -t 3')
break
time.sleep(600) # 每10分鐘檢查一次
if __name__ == '__main__':
checkEmailSubject()
補(bǔ)充:電腦關(guān)機(jī)的常用方法
第一種方式:通過(guò)點(diǎn)擊電腦的開(kāi)始菜單并選擇關(guān)機(jī)
第二種方法:通過(guò)快捷命令alt+F4組合鍵進(jìn)行關(guān)機(jī),在彈出窗口中選擇關(guān)機(jī)并確定
第三種方法:通過(guò)ctrl+alt+delete組合鍵打開(kāi)任務(wù)管理器
通過(guò)選擇用戶選項(xiàng)點(diǎn)擊活動(dòng)的賬戶,并選擇斷開(kāi)或者注銷(xiāo)
第四種方法:通過(guò)電腦運(yùn)行(快捷命令為ctrl+R)輸入cmd進(jìn)入到管理員界面,通過(guò)輸入shuntdown /p進(jìn)行關(guān)機(jī)
第五種方法:直接按住電腦開(kāi)機(jī)鍵數(shù)秒,直到電腦主機(jī)停止運(yùn)行為止,此方法為不得已才會(huì)使用,或者直接切斷電源。
相關(guān)閱讀:為什么電腦總是自動(dòng)關(guān)機(jī)
這種情況,一般由于以下原因造成的:
1.電腦系統(tǒng)中毒或中了惡意軟件。
2.cpu 風(fēng)扇壞導(dǎo)致cpu溫度過(guò)高,過(guò)熱保護(hù)。
3.電源壞,或添加了新硬件,電源供電不足。
4.顯卡或顯卡風(fēng)扇壞。
5.主板壞,主板芯過(guò)熱。
電腦自動(dòng)關(guān)機(jī)相關(guān)文章:
2.電腦老是會(huì)突然自動(dòng)關(guān)機(jī)和重啟怎么處理
3.電腦用著用著總是自動(dòng)關(guān)機(jī)怎么處理