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连接PostgreSQL数据库的方法

前言 其实在Python中可以用来连接PostgreSQL的模块很多,这里比较推荐psycopg2。psycopg2安装起来非常的简单(pip install psycopg2),这里主...

Python基于列表list实现的CRUD操作功能示例

本文实例讲述了Python基于列表list实现的CRUD操作功能。分享给大家供大家参考,具体如下: 本篇文章看之前你的先了解python 基础的知识点,比如控制流,变量,数据类型,lis...

Python3 requests文件下载 期间显示文件信息和下载进度代码实例

这篇文章主要介绍了Python3 requests文件下载 期间显示文件信息和下载进度代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以...

python3.6+opencv3.4实现鼠标交互查看图片像素

python3.6+opencv3.4实现鼠标交互查看图片像素

在利用opencv进行图片处理时,经常需要查看图片关心区域或位置的像素数值,苦于没有应手的小软件,我用python3.6+opencv3.4简单编制一个小工具,供大家使用。 流程 1...

python3+PyQt5实现自定义窗口部件Counters

python3+PyQt5实现自定义窗口部件Counters

本文通过Python3+PyQt5实现自定义部件–Counters自定 窗口部件。这个窗口是3*3的网格。本文有两个例子如下: /home/yrd/eric_workspace/ch...