如何实现自动发邮件(以139邮箱为例)

2019-06-18  本文已影响0人  薛定谔的懒猫

本案例以139邮箱为例,使用python代码编写,具体环境如下:
平台:Windows xp/7/10
脚本:Python 2.7

1、第一步:安装Python 2.7,具体安装包链接为:https://www.python.org/ftp/python/2.7.16/python-2.7.16.msi,整个安装过程直接选择“下一步”,建议保留默认安装路径。

选择安装路径.png
自动下一步安装.png
检查是否安装成功,打开Windows命令提示符,输入(“C:\python27\“是默认安装路径,如果安装时修改了,请自行修改):
echo print "Hello world!" >temp.py | C:\python27\python temp.py

安装成功的话会显示:

>> Hello world!

2、第二步:在电脑随便一个位置新建一个文件夹,创建以下3个文件:

edit.your_mail.py
auto_send_mail.py
run.bat

具体代码如下:
(1)edit.your_mail.py:(你的邮件信息都在这里)

# coding:utf-8

# 在这里编辑发件人、收件人、发件人邮箱登录密码和邮件标题
# 可以添加附加,只需输入附件名称即可(附件需拷贝在同一目录下)
sender = '你的手机号码@139.com'
receivers = ['收件人1@139.com','收件人2@qq.com','收件人3@126.com']
password = '你的邮箱密码'
subject = '邮件标题'
#filename = ['一份PPT.pptx','一个EXCEL.xlsx'] 这是带附件样例
#filename = [] 这是无附件样例
filename = []

# 在这里编辑你的邮件正文
message = '''<h3>《李延年歌》</h3>
<p>北方有佳人。绝世而独立。</p>
<p>一顾倾人城。再顾倾人国。</p>
<p>宁不知倾城与倾国。佳人难再得。</p>
'''

(2)auto_send_mail.py:(创建之后就不要改动它了)

# coding:utf-8
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from edit_your_mail import *

msg = MIMEMultipart()
msg['From'] = sender
msg['To'] = ';'.join(receivers)
msg['Subject'] = Header(subject,'utf-8')
msg.attach(MIMEText(message, 'html', 'utf-8'))

for x in filename:
    att = MIMEText(open(x.decode("utf8"),'rb').read(),'base64','utf-8')
#    att = MIMEText(open(x,'rb').read(),'base64','utf-8')# for mac/linux
    att["Content-Type"] = 'application/octet-stream'
    att["Content-Disposition"] = 'attachment; filename="%s"'%x
    msg.attach(att)

try:
    smtp = smtplib.SMTP('smtp.139.com')
    smtp.set_debuglevel(0)
    smtp.login(sender, password)
    smtp.sendmail(sender, receivers, msg.as_string())
    print "=============\n\nSuccessfully sent mail!\n\n============="
    smtp.quit()
except Exception:
    print "=============\n\nError: unable to send mail!\n\n============="

(3)run.bat:(“C:\python27\“是默认安装路径,如果安装时修改了,请自行修改)

@echo off
C:\Python27\python.exe auto_send_mail.py
pause

(4)运行测试:

3、第三步:利用window任务管理设置定时自动发邮件
(1)打开“任务计划程序”(路径为:开始-所有程序-附件-系统工具-任务计划程序)


打开任务计划程序.png

(2)点击“创建任务”按钮


创建任务.png
(3)添加触发条件
触发器.png
(4)新建操作,脚本定位为run.bat所在路径,起始于为run.bat的所在目录
007.png

(5)确认,到此为止便大功告成!


确认.png
(6)如需再次修改创建的任务,可在任务计划程序库查找
任务计划程序库

以上便是如何自动发邮件的全过程,谢谢阅读!

上一篇下一篇

猜你喜欢

热点阅读