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

yipeiwu_com5年前Python基础

本文实例为大家分享了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.user('*****@163.com') 
  p.pass_('*******') 
  ret = p.stat() 
 except: 
  print('Login failed!') 
  sys.exit(1) 
 str = p.top(ret[0], 0) 
 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']) 
 if sub[0][1]: 
  submsg = sub[0][0].decode(sub[0][1]) 
 else: 
  submsg = sub[0][0] 
 if submsg.strip() == '关机': 
  return 0 
 elif submsg.strip() == '重启': 
  return 1 
 p.quit() 
def send_email(): 
 user = '*******@qq.com' 
 pwd = '**********' 
 to = ['*****@163.com', '*****@139.com']  #139邮件会有短信提醒,让我知道是否成功 
 msg = MIMEText('') 
 msg['Subject'] = '已收到命令!' 
 msg['From'] = user 
 msg['To'] = ','.join(to) 
 s = smtplib.SMTP('smtp.qq.com') 
 s.login(user, pwd) 
 s.sendmail(user, to, msg.as_string()) 
 s.close() 
 
if __name__ == '__main__': 
 while True: 
  time.sleep(20) 
  if check_email() == 0: 
   send_email() 
   os.system('shutdown -s -t 1') #关机 
   break 
  if check_email() == 1: 
   send_email() 
   os.system('shutdown -r')  #重启 
   break 

测试成功 

其它命令自行添加,这里只作 关机和重启. 脑洞大开!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 除法小技巧

复制代码 代码如下:from __future__ import division print 7/3 输出结果: 2.3333333333...

Selenium鼠标与键盘事件常用操作方法示例

Selenium鼠标与键盘事件常用操作方法示例

本文实例讲述了Selenium鼠标与键盘事件常用操作方法。分享给大家供大家参考,具体如下: Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就...

Python 日志logging模块用法简单示例

Python 日志logging模块用法简单示例

本文实例讲述了Python 日志logging模块用法。分享给大家供大家参考,具体如下: demo.py(日志,输出到控制台): import logging # 导入loggin...

Python实现读取邮箱中的邮件功能示例【含文本及附件】

本文实例讲述了Python实现读取邮箱中的邮件功能。分享给大家供大家参考,具体如下: #-*- encoding: utf-8 -*- import sys import local...

Python使用redis pool的一种单例实现方式

本文实例讲述了Python使用redis pool的一种单例实现方式。分享给大家供大家参考,具体如下: 为适应多个redis实例共享同一个连接池的场景,可以类似于以下单例方式实现:...