python实现电脑自动关机

0、前言

在以前读书的时候,实验室里面要求每天都要关电脑,有时候出去玩得晚了,懒得回实验室关电脑,又没有同学帮忙。于是就想,能不能通过什么手段实现远程关闭电脑。在网上搜索一番后,决定用 python + email,实现远程关闭电脑。

1、准备

python: 3.5.2 email:163邮箱 system:Win10
安装依赖包email:在python安装目录下/Scripts下执行:pip install email
设置163邮箱的POP3/SMTP服务 : 登录163邮箱 –> 设置 –> POP3/SMTP/IMAP –> 勾选POP3/SMTP服务

2、说明

执行py程序后,程序将每隔10分钟(时间可以自己设置)读取一次邮箱最新邮件,解析获得邮件主题,当主题为“关机”时,程序将关闭电脑,为“重启”时,将重启电脑。在长时间离开电脑时,可以将py程序跑起来,如果需要关机或重启,可以向邮箱发一封邮件即可

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邮箱设置中的客户端授权密码
  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()

4、结束语

不过自打我工作半年来,一共也就只关过3、4次电脑

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • python定时关机小脚本

    本文实例为大家分享了python定时关机的具体代码,供大家参考,具体内容如下 # coding: utf-8 import sys import os import time reload(sys) sys.setdefaultencoding("GBK") # shutdown computer after time_diff seconds def shutdown(seconds): print str(seconds) + u' 秒后将会关机...' time.sleep(se

  • python实现的重启关机程序实例

    本文实例讲述了Python实现的重启关机程序的方法,对Python程序设计有一定的参考价值.具体方法如下: 实例代码如下: #!/usr/bin/python #coding=utf-8 import time from os import system runing = True while runing: input = raw_input('关机(s)OR重启(r)?(q退出)') input = input.lower() if input == 'q' or input =='quit

  • python实现远程通过网络邮件控制计算机重启或关机

    需求分析: python实现一个远程通过网络邮件控制计算机重启或关机的项目. 程序流程: 过程分析: 要实现本功能,首先要直到在本地如何通过Python控制计算机的重启和关机,然后需要知道如何远程发送消息给Python程序.可以在Python中执行CMD命令控制计算机的重启和关机,把发送电子邮件作为远程控制的渠道.Python程序自动登录邮箱检测邮件,当发送关机指令给这个邮箱时,则执行关机命令. 1.通过os.system()函数执行CMD命令 import os os.system('shut

  • Python3.4实现远程控制电脑开关机

    本文实例为大家分享了Python实现远程操控电脑的具体代码,供大家参考,具体内容如下 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 check_email(): try: p = poplib.POP3('pop.163.com') p

  • python实现Windows电脑定时关机

    定时关机,功能:windows下,用户按照一定格式输入关机时间,系统到指定时间自动关闭 思路:从用户输入获取指定时间 分别以时分秒减去当前时间 最终计算得到当前时间距离指定 时间还有多少秒 作为关机命令的时间参数. 需要用到的模块: os 用于执行设定的系统命令 time 用于获取系统时间 需要用到cmd命令: shutdown -s -t xxx 其中xxx为距离自动关机所用秒数,即时间参数 shutdown -a 取消关机计划. 代码: import os import time input

  • 利用Python实现Windows定时关机功能

    是最初的几个爬虫,让我认识了Python这个新朋友,虽然才刚认识了几天,但感觉有种莫名的默契感.每当在别的地方找不到思路,总能在Python找到解决的办法.自动关机,在平时下载大文件,以及跑程序的时候能用到的,刚才写了个windows自动关机的小程序,程序过于简单,就当是玩玩吧,当然还有很多可改进的地方.下面正文:  #ui制作: 照旧,笔者由Qt制作完成需要的ui,包括label,label_2,label_3,lable_4,lineEdit,lineEdit_2,pushButton组件.

  • 用python写一个windows下的定时关机脚本(推荐)

    由于本人经常使用笔记本共享WiFi,但是又不想笔记本开机一夜(为了低碳环保嘛 ~_~!),所以每次都要用使用DOS命令关机,感觉好麻烦.正好最近在学习Python,于是决定用python写一个定时关机的脚本: 话不多说由于代码比较简单,直接上代码. 代码块 # -*- coding: utf-8 -*- """ Created on Sat Dec 19 11:18:16 2015 @author: win7 """ '''定时关机''' '''

  • python通过微信发送邮件实现电脑关机

    Python 通过微信邮件实现电脑关机,供大家参考,具体内容如下 通过手机微信发送QQ邮件给sina邮箱,然后利用python的pop3定时检查sina邮箱的邮件主题以及邮件来源,并在电脑执行相应的命令行实现关机. Email_test[V1.0] import poplib import os import time from email.parser import Parser from email.header import decode_header from email.utils i

  • python实现电脑自动关机

    0.前言 在以前读书的时候,实验室里面要求每天都要关电脑,有时候出去玩得晚了,懒得回实验室关电脑,又没有同学帮忙.于是就想,能不能通过什么手段实现远程关闭电脑.在网上搜索一番后,决定用 python + email,实现远程关闭电脑. 1.准备 python: 3.5.2 email:163邮箱 system:Win10 安装依赖包email:在python安装目录下/Scripts下执行:pip install email 设置163邮箱的POP3/SMTP服务 : 登录163邮箱 –> 设置

  • 基于Python实现一个自动关机程序并打包成exe文件

    目录 1.实现效果 2.实现步骤 3.全部代码  Python代码打包exe文件在桌面运行的方式我之前有写,置顶了,也可以参考这里直接阅读:Python打包exe方法 1.实现效果 2.实现步骤 模块导入 import os,sys,time from PyQt5 import QtCore,QtWidgets,QtGui 窗口设置 def pageShow(self,page): #设置窗口的位置和大小 page.setGeometry(400,400,400,200) #设置窗口的标题 pa

  • 通过Python实现电脑定时关机的两种方法

    目录 导语 一.普通人关机 二.程序员关机 1)Pyqt5界面化小程序 ​2)Tkinter界面化小程序 导语 无论家用电脑还是公司的电脑,定时开关机都是一个非常实用的功能,只是一般都不太受关注.定时关机不仅能延长电脑的使用寿命,还能节约超多的电费呢~哈哈哈哈​ 害~这不,周天休假一天,但是公司的电脑大部分的小伙伴儿就开了一天,有时候放长假的时候电脑一开就是几天.这不?隔壁的小姐姐已经被领导发现了,最后的最后这个事情就落到我手里了,开发一个能定时关机的源码项目供大家使用,并互相提醒每个人一定要下

  • 基于Python编写一个自动关机程序

    目录 1.实现效果 2.实现步骤 3.全部代码 1.实现效果 2.实现步骤 模块导入 import os,sys,time from PyQt5 import QtCore,QtWidgets,QtGui 窗口设置 def pageShow(self,page): #设置窗口的位置和大小 page.setGeometry(400,400,400,200) #设置窗口的标题 page.setWindowTitle('Window shutdown') #设置窗口的图标 #page.setWindo

  • Python获取电脑硬件信息及状态的实现方法

    本文以实例形式展示了Python获取电脑硬件信息及状态的实现方法,是Python程序设计中很有实用价值的技巧.分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: #!/usr/bin/env python # encoding: utf-8 from optparse import OptionParser import os import re import json def main(): try: parser = OptionParser(usage="%prog [optio

  • 如何利用python查找电脑文件

    利用python查找电脑里的文件非常方便 比如在我的电脑:D:\软件 文件夹里有非常非常多的软件. 我忘记某个软件叫什么名字了,只记得文件名称里有 now,而且后缀名是.zip 利用python如何实现查找呢? 用python非常简单: 代码如下截图: 首先是导入模块os 然后就是利用os.listdir()打开目录下的所有文件,files其实是一个列表. 其实前2行可以合并为一行:files=os.listdir(u'D:\软件') 这样写也行. 下面就是一个for循环非常简单,然后就是做一个

  • python输出电脑上所有的串口名的方法

    输出电脑上所有的串口名: import serial import serial.tools.list_ports from easygui import * port_list = list(serial.tools.list_ports.comports()) if len(port_list) <= 0: print "The Serial port can't find!" else: for i in list(port_list): #print i[0] 仅仅输出端

  • 使用python获取电脑的磁盘信息方法

    使用Python获取电脑的磁盘信息需要借助于第三方的模块psutil,这个模块需要自己安装,纯粹的CPython下面不具备这个功能. 在iPython交互界面中进行如下演示: 查看电脑的磁盘分区: In [1]: import psutil In [2]: psutil.disk_partitions() Out[2]: [sdiskpart(device='/dev/disk2', mountpoint='/', fstype='hfs', opts='rw,local,rootfs,dovo

  • python得到电脑的开机时间方法

    如下所示: #先下载psutil库:pip install psutil import psutil import os,datetime def main(): print "电脑的开机时间", #调用psutil.boot_time()函数返回开机的时间戳 dt = datetime.datetime.fromtimestamp(psutil.boot_time()) #返回一个datetime对象 print dt.strftime("%Y-%m-%d,%H:%M:%S

  • 学python最电脑配置有要求么

    python对于电脑硬件基本没什么要求,下载python安装程序的时候,注意看下自己电脑属性是64位系统还是32位系统,再下载对应的python安装程序. 单纯学Python的话普通电脑就ok了,机器学习几大基础算法都ok,学深度学习的话台式无脑上1080ti或者泰坦xp,其他配置留下升级空间.笔记本的话要强劲点的,最好带固态硬盘,支持16G内存或以上,带有英伟达1060以上的显卡. 当然,如果有条件,还是推荐mac的,优点不用说! 买什么电脑还要根据自身的实际情况来决定,如果是学生党,建议普通

随机推荐