用python 代码 怎么给别人发邮件的两种写法

一、QQ,qq使我们最常用的邮箱,我们怎么用代码给别人发邮箱呢?

1、新建一个文件,文件名不能是email ,记住了。否则会出错的。

import smtplib,time

# QQ邮箱

HOST = 'smtp.qq.com'  # 服务器主机,相当于第三方客户端

PORT = '465'  # 端口 使用SSL,端口号465或587

FROM = '发件人邮箱'  # 发件人的邮箱账号,必须是本人可登录的.
TO = ['邮箱账号1', '邮箱账号二']  # 接收邮件的人的账号.可以是类表;也可以是用,连接的字符串 '邮箱账号1', '邮箱账号二'

SUBJECT = '这是一封测试邮件'  # 邮件的标题

CONTENT = '这是一封邮件'  # 邮件的内容

# 创建邮件发送对象

smtp_obj1 = smtplib.SMTP()  # 普通邮件的发送形式

smtp_obj = smtplib.SMTP_SSL()  # 数据在传输过程中会被加密。

smtp_obj.connect(host=HOST, port=PORT)  # 需要进行发件人的认证,授权,smtp_obj就是一个第三方客户端对象

res = smtp_obj.login(user=FROM, password='授权码')  # 如果使用第三方客户端登录,要求使用授权码,不能使用真实密码,防止密码泄露。

print(res, '登录成功')

for to in TO:
    print(to)
    msg = '\n'.join(['From: {}'.format(FROM), 'To: {}'.format(to), 'SUBJECT:{}'.format(SUBJECT), '', CONTENT])  # 发送邮件,这里是我们按照邮箱的格式拼接一下.
    for num in range(1, 100):  # 循环发送
        time.sleep(5)  # 设置一下睡眠时间
        smtp_obj.sendmail(from_addr=FROM, to_addrs=[to], msg=msg.encode('utf-8'))  # 这里要编码,不然会出现ASCII码编码错误.
        print('发送成功')

特别声明一下(红色的代码是固定的写法,不能够乱改)

2、授权码的获取。QQ邮箱 →设置→账户 ,发送信息获取授权码,复制粘贴就OK了。


二、网易邮箱、网易邮箱也是我们常用的。当初荒野行动出来的时候,我们不知道申请了多少个。我们也可以用网易邮箱给别人发邮件。

1、网易邮箱的代码跟qq 的差不多,只有两个几个地方要改。其他的不变。

import smtplib,time

# QQ邮箱

HOST = 'smtp.163.com'  # 服务器主机,相当于第三方客户端

PORT = '25'  # 端口 使用SSL,端口号 默认25

FROM = '发件人邮箱'  # 发件人的邮箱账号,必须是本人可登录的.
TO = ['邮箱账号1', '邮箱账号二']  # 接收邮件的人的账号.可以是类表;也可以是用,连接的字符串 '邮箱账号1', '邮箱账号二'

SUBJECT = '这是一封测试邮件'  # 邮件的标题

CONTENT = '这是一封邮件'  # 邮件的内容

# 创建邮件发送对象

smtp_obj1 = smtplib.SMTP()  # 普通邮件的发送形式

smtp_obj = smtplib.SMTP_SSL()  # 数据在传输过程中会被加密。

smtp_obj.connect(host=HOST, port=PORT)  # 需要进行发件人的认证,授权,smtp_obj就是一个第三方客户端对象

res = smtp_obj.login(user=FROM, password='授权码')  # 如果使用第三方客户端登录,要求使用授权码,不能使用真实密码,防止密码泄露。

print(res, '登录成功')

for to in TO:
    print(to)
    msg = '\n'.join(['From: {}'.format(FROM), 'To: {}'.format(to), 'SUBJECT:{}'.format(SUBJECT), '', CONTENT])  # 发送邮件,这里是我们按照邮箱的格式拼接一下.
    for num in range(1, 100):  # 循环发送
        time.sleep(5)  # 设置一下睡眠时间
        smtp_obj.sendmail(from_addr=FROM, to_addrs=[to], msg=msg.encode('utf-8'))  # 这里要编码,不然会出现ASCII码编码错误.
        print('发送成功')

2、网易授权码的获取,与pop3的开启  ,设置→POP3/MSTP /IMAP

客户端授权密码 ,发送并接受一下即可


  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值