Python实现发送邮件

如何用python代码实现发送邮件

1、 首先我们必须要有邮箱账号,发件人的邮箱必须先设置开启SMTP协议。
使用邮箱的授权码。
2、 然后我们可以去邮箱设置里面看一下是否开启了SMTP协议。
在设置里面找到账户,然后往下找。
只要开启第一个POP3/SMTP服务就可以了,如果没有开启这个服务需要验证手机号开启一下,得到授权码。
3、 记住自己的授权码。

下面就是用代码实现发送邮件:

#! /usr/bin/env python
#-*- coding: utf-8 -*-

import smtplib  
from email.mime.text import MIMEText    
  
host = 'smtp.163.com'  # 设置发件服务器地址  
port = 25  # 设置发件服务器端口号。注意,这里有SSL和非SSL两种形式  
sender = 'xxxxxx@163.com'  # 设置发件邮箱,一定要自己注册的邮箱  
pwd = '1qaz2wsx3edc'  # 设置发件邮箱的密码,等会登陆会用到  
receiver = 'xxxxxxxxxxxxxxx' # 设置邮件接收人,可以是扣扣邮箱  
body = '<h1>Hi</h1><p>test</p>' # 设置邮件正文,这里是支持HTML的  


f = open('report_test.html', 'rb') # HTML文件默认和当前文件在同一路径下,若不在同一路径下,需要指定要发送的HTML文件的路径
mail_body = f.read()
f.close()


msg = MIMEText(mail_body, 'html','utf-8') # 设置正文为符合邮件格式的HTML内容  
msg['subject'] = 'Hello world' # 设置邮件标题  
msg['from'] = sender  # 设置发送人  
msg['to'] = receiver  # 设置接收人  
  
try:  
    s = smtplib.SMTP(host, port)  # 注意!如果是使用SSL端口,这里就要改为SMTP_SSL  
    s.login(sender, '1qaz2wsx')  # 登陆邮箱  
    s.sendmail(sender, receiver, msg.as_string())  # 发送邮件!  
    print ('Done')  
except smtplib.SMTPException as e:
    print (e)

希望你们能够借鉴,对你们能够有所帮助。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值