港服(Server.HK)Python教程:Python邮箱:开机自启不错过重要的消息

近日闲来无事,查看了一下电脑日志。发现电脑总是在我出差时候被人打开。接下来就有了这篇文章。其实就是一个简单的Python…

近日闲来无事,查看了一下电脑日志。发现电脑总是在我出差时候被人打开。接下来就有了这篇文章。其实就是一个简单的Python邮件发送的代码。简单的不能再简单了。

环境篇

操作系统:Windows 10
编程语言:Python 3.8
所用 IDE:PyCharm 2018

直接上代码

# _*_ coding: utf-8 _*_

from email.mime.text import MIMEText
import smtplib
import datetime

date_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') #获取当前时间

try:
    content = MIMEText("您的计算机已开机,开机时间时间为:%s" % date_time, 'plain', 'utf-8')
    reveivers = "收件人邮箱"
    content['To'] = reveivers
    content['From'] = str("发件人邮箱")
    content['Subject'] = "邮件发送主题"
    smtp_server = smtplib.SMTP_SSL("smtp.qq.com", 465) #这里使用的QQ邮箱SMTP协议 你也可以使用网易或着其他邮箱
    smtp_server.login("发件人邮箱", "发件人的邮箱密码") #登陆发件人邮箱
    smtp_server.sendmail("发件人邮箱", reveivers , content.as_string()) # 发送邮件
    smtp_server.quit() #退出
except Exception as e:
    print(str(e))

程序写好也调试好了,那么下面我们将编写的Python程序打包Windows可执行程序exe文件

首先我们当然是用pip先安装pyinstaller模块

pip install pyinstaller

假设我们的Python文件为 email.py
打开CMD命令行窗口使用cd命令切换到我们email.py所在的目录执行以下命令

pyinstaller email.py

等待程序编译结束,就会在email.py所在的目录生成一个dist文件夹,这个文件夹里面存放的就是我们最后生成的exe可执行文件
我们双击exe文件会发现,弹出了一个命令行窗口,紧接着我们就会收到一封程序发来的邮件。
但是每次执行都会弹出一个命令行窗口,这让人很是恶心。我们本来想要秘密进行的事,这一个弹窗就败坏了。那该怎么办呢?
执行时能不能不弹出命令行窗口呢?
当然是可以的啦。
我们在使用pyinstaller执行打包命令的时候,可以加上参数 –noconsole 就可以去掉该窗口。

pyinstaller email.py --noconsole

至此我们的程序也都全部完成了。
那怎么在计算机开始时候运行这个程序呢。
很简单,你可以将生成好的exe文件直接放在计算机的开机启动目录中
当然你也可以创建任务计划
两种方法,看个人爱好啦!


    更多python相关内容,请关注 python港服(Server.HK)教程。

为您推荐

港服(Server.HK)Python教程:如何实现对Python中列表的排序?

对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sor...

港服(Server.HK)Python教程:python迭代器中的函数整理

1、可以连接迭代器的函数 chain:按顺序将多个迭代器连接成一个迭代器。 Cycle:重复迭代器的所有元素。 Tee:...

港服(Server.HK)Python教程:用Python举例实现逆波兰表达式

逆波兰表达式是编译原理中的一种基本表达式,利用Python语言也可以实现逆波兰表达式的输出,这里举例实践说明: 什么是逆...

Python 程序:检查给定字符串是否为回文

港服(Server.HK)Python教程: 用一个实例写一个 Python 程序来检查给定的字符串是不是回文。在 Py...

港服(Server.HK)Python教程:python3判断字典中key是否存在

今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实...
返回顶部