admin管理员组文章数量:1625851
本想直接做发送短信程序,但是阿里云短信模板要求必须有程序
那就先做一个邮件程序
原理很简单:
1.编写邮件发送程序,一运行就发送
2.将此程序设置为开机自启动
目录
- 1.程序
- 2. 设置
- 3.注意:
- 4.短信程序写不了了
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'
mail_user = '用户名'
mail_pass = '密码'
sender = 'buct_report@sina'
receivers = url # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
message = MIMEText(text, 'html', 'utf-8') # 邮件内容
message['From'] = Header('report@sina') # 邮件发送人
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', 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里的程序资源不行。我就写一个这么简单的程序,估计进不去,就放弃了。感觉几乎不对个人用户开放短信平台了,麻烦。
如果有大佬知道有什么好用的短信平台也可以说一下,万分感谢。
版权声明:本文标题:开机自启动发送邮件(短信程序) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728932633a1180440.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论