zoukankan      html  css  js  c++  java
  • Python3.4 远程操控电脑(开关机)

    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('
    '.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
    
    測试成功

    其他命令自行加入,这里仅仅作 关机和重新启动. 脑洞大开!

    转载请注明作者与出处:http://blog.csdn.net/u013511642   王小涛_同學


  • 相关阅读:
    单选多选样式写法
    深拷贝方法
    防抖和节流的实现
    yarn 常用指令
    前端性能监控
    全表 or 索引
    Order by
    DINSTINCT
    智力题
    概率问题
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7057910.html
Copyright © 2011-2022 走看看