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

这篇博客介绍了如何使用Python编写一个简单的邮件发送程序,该程序能够在开机时自动启动并发送邮件。作者通过设置SMTP服务器和账号信息,实现了邮件的发送,并提供了将程序设置为Windows开机自启的方法。此外,还分享了因阿里云等短信平台审核严格,个人用户难以使用短信服务的困扰。
摘要由CSDN通过智能技术生成

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

1.程序

#!/usr/bin/python3

import smtplib
from email.mime.text import MIMEText
from email.header import Header
import time


def 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:
    #     pass
    localtime = 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里的程序资源不行。我就写一个这么简单的程序,估计进不去,就放弃了。感觉几乎不对个人用户开放短信平台了,麻烦。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值