标签:qq get send apscheduler 邮箱 Docker 推送 com lovelive
由于最近工作比较忙,后续博客可能更新不及时,哈哈
前言:
由于python对于微信推送不够友好,需要扫码登录,短信接口需要RMB。我就想到了qq邮箱发送到好友,然而微信有qq邮箱提醒功能,就实现了我需要定时推送消息的需求。
import smtplib,requests from email.mime.text import MIMEText from email.utils import formataddr from apscheduler.schedulers.blocking import BlockingScheduler def send_mail(recipients,content): #收件人 内容 ret=True try: msg=MIMEText(content,'plain','utf-8') msg['From']=formataddr(["每日一乐",'396961930@qq.com']) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 msg['To']=formataddr(["",recipients]) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 msg['Subject']="开心每一天" # 邮件的主题,也可以说是标题 server=smtplib.SMTP_SSL("smtp.qq.com", 465) # 发件人邮箱中的SMTP服务器,端口是465 server.login('396961930@qq.com', '自己的秘钥') # smtp秘钥 server.sendmail('396961930@qq.com',[recipients,],msg.as_string()) # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件 server.quit()# 关闭连接 except Exception:# 如果 try 中的语句没有执行,则会执行下面的 ret=False ret=False return ret def get_lovelive_info(): ''' 从土味情话中获取每日一句。 :return: str,土味情话 ''' print('获取土味情话...') resp = requests.get("https://api.lovelive.tools/api/SweetNothings") if resp.status_code == 200: return resp.text + "\n" else: print('每日一句获取失败') return None def send(): send_mail('396961930@qq.com',get_lovelive_info()+"\t\t"+"(@Xcsg消息来自互联网)") send_mail('768158105@qq.com',get_lovelive_info()+"\t\t"+"(@Xcsg消息来自互联网)") send_mail('595829154@qq.com',get_lovelive_info()+"\t\t"+"(@Xcsg消息来自互联网)") send_mail('312161486@qq.com',get_lovelive_info()+"\t\t"+"(@Xcsg消息来自互联网)") if __name__ == "__main__": #定时任务 scheduler = BlockingScheduler() scheduler.add_job(send, 'cron', hour='7,22', minute='0') scheduler.start()
dokcerfile
FROM python:3.7 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY requirements.txt /usr/src/app/ RUN pip install -r /usr/src/app/requirements.txt RUN rm -rf /usr/src/app COPY . /usr/src/app CMD [ "python3", "./message.py"]
requirements:
apscheduler requests
打包好运行如下:
***** 里面有时区问题坑,注意
效果如下:
标签:qq,get,send,apscheduler,邮箱,Docker,推送,com,lovelive 来源: https://www.cnblogs.com/xcsg/p/12967737.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。