开机自启动发送邮件(短信程序)

本想直接做发送短信程序,但是阿里云短信模板要求必须有程序
那就先做一个邮件程序
原理很简单:
1.编写邮件发送程序,一运行就发送
2.将此程序设置为开机自启动

目录

    • 1.程序
    • 2. 设置
    • 3.注意:
    • 4.短信程序写不了了

1.程序

#!/usr/bin/python3import smtplib
from email.mime.text import MIMEText
from email.header import Header
import timedef email_se(url, text):"""难点:新浪邮箱和网易邮箱都要求发件人名称与message[‘From’]的内容一致,所以message[‘From’]的内容中不能用‘utf-8’:param url: 收件人地址:param text:要发送的字符串:return: 无"""# 第三方 SMTP 服务mail_host = 'smtp.sina.com'mail_user = '用户名'mail_pass = '密码'sender = 'buct_report@sina.com'receivers = url   #  接收邮件,可设置为你的QQ邮箱或者其他邮箱message = MIMEText(text, 'html', 'utf-8')   # 邮件内容message['From'] = Header('report@sina.com')  # 邮件发送人message['To'] = Header('家庭电脑通知', 'utf-8')  # 收件人名称subject = '电脑打开时间'  # 主题message['Subject'] = Header(subject, 'utf-8')try:smtpObj = smtplib.SMTP()smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号smtpObj.login(mail_user, mail_pass)smtpObj.sendmail(sender, receivers, message.as_string())print("邮件发送成功")except smtplib.SMTPException:print("Error: 无法发送邮件")if __name__ == '__main__':# 一个url只能发一个,要for循环发送# for url in url_list:#     passlocaltime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())email_se('571028495@qq.com', str(localtime)+'您的电脑已经打开,请注意回去揍孩子(doge)')

之后打包文件成exe格式,在pycharm中只需要点开Terminal,输入

pyinstaller -F xxx.py(xxx.py,打包的文件)

打包好的文件在项目文件的dist文件夹中

2. 设置

此部分参考Windows设置自己的程序开机自动启动的文章,我们选用最简单的方法:将程序快捷方式拖到启动文件夹

1.win+r打开命令框
2.输入

shell:startup

点击回车

此时图片

3.会进入启动文件夹,将程序快捷方式拖进来即可。
启动文件夹
邮件示例:
在这里插入图片描述

3.注意:

1.如果之前没有打包过文件夹,记得安装pyinstaller,
安装指令:pip install pyinstaller

2.此程序若需要更改目标用户,需更改程序代码,没有相应配置文件。

4.短信程序写不了了

阿里云、百度云、华为云都需要提供应用商店内可供下载的程序审核很严格,起码csdn里的程序资源不行。我就写一个这么简单的程序,估计进不去,就放弃了。感觉几乎不对个人用户开放短信平台了,麻烦。

如果有大佬知道有什么好用的短信平台也可以说一下,万分感谢。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部