Python十几行代码实现邮件自动发送

本次教程用Python十几行代码实现邮箱邮件自动发送。

一、开发环境:

安装好Python环境,需要使用的库函数:smtplib和email,这两者为Python自带库,无需安装。

二、配置发送邮箱信息

发送邮箱设置(两种方案)

1、不使用第三方服务,即本机安装 sendmail(邮件传输代理程序)

安装详情参考:https://my.oschina.net/u/588516/blog/2354019

2、使用第三方 SMTP 服务(本人亲用,大家可以自行选择)

开启SMTP方法授权,获取授权码(授权码很重要),步骤:

1)进入邮箱设置

2)找到POP3/SMTP服务,默认关闭,你需要将它开启

3)开启POP3/SMTP服务时,需要进行身份的验证,按要求来发送一条短信后,点击我已发送

4)通过验证的话,就会得到授权码了,在客户端中,配置时密码换成这个授权码就可以了

三、获取邮箱服务器地址和SSL端口号(根据自己选择的邮箱提供商选用)

a) qq邮箱

i. 接收邮件服务器:pop.qq.com,使用SSL,端口号995

ii. 发送邮件服务器:smtp.qq.com,使用SSL,端口号465或587

b) 163邮箱

i. 发送邮件服务器:smtp.163.com,使用SSL,端口号465

ii. 若安全类型选择“无”,则需将端口号修改为 25

c) 126邮箱

i. 发送邮件服务器:smtp.126.com,使用SSL,端口号465

ii. 若安全类型选择“无”,则需将端口号修改为 25

四、代码实现

#导入所用库函数

import smtplib

from email.mime.text import MIMEText

from email.utils import formataddr

#服务商发送服务器地址

host = 'smtp.126.com'

#服务商发送服务器端口号

port = 465

#发件人邮箱账号

my_sender='xxx@xx.com'

#发件人邮箱密码

my_passwd = 'xxxxxxx'

#收件人邮箱账号

to_user='xxx@xx.com'

# 邮箱服务器地址和端口

smtp_s = smtplib.SMTP_SSL(host=host, port=port)

#登录邮箱

smtp_s.login(user=my_sender, password=my_passwd)

#发送信息内容定义

msg = MIMEText(content, _subtype=content_type, _charset="utf8")

#发件人,默认为邮箱名,可设置别名

msg["From"] = formataddr(('程序员唐丁',self.msg_from)) 

#发送对象邮箱

msg["To"] = to_user

#发送主题

msg["Subject"] = subject

#确认发送

smtp_s.send_message(msg, from_addr=my_sender, to_addrs=to_user)

更多教程欢迎关注微信公众号“程序员唐丁”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员唐丁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值