您的位置 首页 > 数码极客

如何开启邮箱pop3、如何开启邮箱地址… 如何开启邮箱imap

1 开启邮箱 SMTP 服务

发送邮件需要使用 SMTP 服务器,常用的免费服务器有:163、126、qq 等邮箱。

QQ 邮箱配置方式如下:

1) 登录 qq 邮箱,选择【设置】-【账户】

2) 在POP3/IMAP/SMAP/Exchage/CardDAV/CalDAV服务中,找到 POP3/SMTP 服务和 IMAP/SMTP 服务,点击开启。

163 邮箱配置方式如下:

1) 注册 163 邮箱,登录后设置。

2)在新页面点击 “客户端授权密码”,勾选 “开启”,弹出新窗口填写手机验证码。

3) 填写授权码

4) 提示开启成功。

2使用 python 发送邮件

使用 python 自带的模块:smptlib、email

import smtplib from email.mime.text import MIMEText from email.header import Header

1、发送普通的邮件

# 发送邮件的步骤 import smtplib from email.mime.text import MIMEText # 用来构造文本类型的邮件 from email.header import Header # 用来构造邮件的头部 # 第一步:创建一个SMTP的对象 s = () # 第二步:连接到SMTP的服务器 host = '; # 设置163邮箱服务器,端口为:25 port = 25 # host = '; port = 465 # 设置qq邮箱服务器,端口为:465 s.connect(host,port) # 连接服务器 # s.connect(host = ';,port = 25) # 第三步:登录SMTP服务器 mail_user = '@163.com' # 163邮箱的用户名 mail_pass = 'password' # 注意:此处填写的是邮箱的SMTP服务器授权码 s.login(user=mail_user,password=mail_pass) # 第四步:构建邮件内容 content = '使用python测试发送邮件' # 构建邮件内容 msg = MIMEText(content,_charset='utf8') # _charset 指定编码格式 msg['Subject'] = Header('测试报告','utf8') # 邮件主题 msg['From'] = 'wl@163.com' # 发件人邮箱,可传入列表,用于给多个人发送文件 msg['To'] = '1572533878@qq.com' # 收件人 # 第五步:发送邮件 s.sendmail(from_addr=msg['From'],to_addrs=msg['To'],msg=m()) #将邮件内容转换为字符串

2、发送 HTML 格式邮件及附件

import smtplib from email.mime.text import MIMEText # 文本类型的邮件,用来构造邮件 from email.header import Header # 用来构造邮件的头部 from email.mime.application import MIMEApplication from email.mime.multipart import MIMEMultipart # 用来构造附件 # 发送邮件的步骤 # 第一步:创建一个SMTP的对象 s = () # 第二步:连接到SMTP的服务器 host = '; # 设置163邮箱服务器,端口为:25 port = 25 # host = '; # 设置qq邮箱服务器,端口为:465 s.connect(host,port) # 连接服务器 # 第三步:登录SMTP服务器 mail_user = 'wl@163.com' # 163邮箱的用户名 mail_pass = 'wl987654321' # 注意:此处填写的是邮箱的SMTP服务器授权码 s.login(user=mail_user,password=mail_pass) # 构造文本邮件内容 content = '使用python测试发送邮件' # 构建邮件内容 textcontent = MIMEText(content,_charset='utf8') # _charset 指定编码格式 # 构造附件(二进制字节流形式) part = MIMEApplication(open("re;,'rb').read(),_subtype=None) # part = MIMEApplication(open("re;,'rb').read()) 需要查看_subtype=None 是否会引发异常 ('content-disposition', 'attachment', filename='re;) # 对方收到邮件之后,附件在邮件中显示的名称 # 封装一封邮件 msg = MIMEMultipart() # 加入文本内容 m(textcontent) m(part) # 发送邮件 msg['From'] = 'wl@163.com' #发件人邮箱 msg['To'] = '1572533878@qq.com' #收件人 #第五步:发送邮件 s.sendmail(from_addr='wl@163.com',to_addrs='1572533878@qq.com',msg=m()) # 将邮件内容转换为字符串

3、定义 send_email 函数

import smtplib from email.mime.text import MIMEText #文本类型的邮件,用来构造邮件 from email.header import Header #用来构造邮件的头部 from email.mime.application import MIMEApplication from email.mime.multipart import MIMEMultipart #用来构造附件 def send_email(filepath): """ :param filepath: #传入报告文件的路径 :return: """ # 发送邮件的步骤 # 第一步:创建一个SMTP的对象 s = () # 第二步:连接到SMTP的服务器 host = '; #设置163邮箱服务器,端口为:25 port = 25 # host = '; #设置qq邮箱服务器,端口为:465 s.connect(host,port) #连接服务器 # 第三步:登录SMTP服务器 mail_user = 'wl@163.com' #163邮箱的用户名 mail_pass = 'wl987654321' #注意:此处填写的是邮箱的SMTP服务器授权码 s.login(user=mail_user,password=mail_pass) #构造文本邮件内容 content = '使用python测试发送邮件' #构建邮件内容 textcontent = MIMEText(content,_charset='utf8') #_charset 指定编码格式 #构造附件(二进制字节流形式) part = MIMEApplication(open(filepath,'rb').read()) ('content-disposition', 'attachment', filename='re;) #对方收到邮件之后,附件在邮件中显示的名称 # 封装一封邮件 msg = MIMEMultipart() #加入附件和文本内容 m(textcontent) m(part) #发送邮件 msg['From'] = 'wl@163.com' #发件人邮箱 msg['To'] = '1572533878@qq.com' #收件人 #第五步:发送邮件 s.sendmail(from_addr=msg['From'],to_addrs=msg['To'],msg=m()) #将邮件内容转换为字符串 send_email('re;)

4、使用 python 发送邮件时常见错误:

错误 1:AuthenticationError: (550, b'User has no permission') 。

我们使用 python 发送邮件时相当于自定义客户端根据用户名和密码登录,然后使用 SMTP 服务发送邮件,新注册的 163 邮箱是默认不开启客户端授权的(对指定的邮箱大师客户端默认开启),因此登录总是被拒绝,解决办法(以 163 邮箱为例):进入 163 邮箱 - 设置 - 客户端授权密码 - 开启(授权码是用于登录第三方邮件客户端的专用密码)。上述有专门的设置方法。

错误 2:AuthenticationError: (535, b'Error: authentication failed') 。

以 163 邮箱为例,在开启 POP3/SMTP 服务,并开启客户端授权密码时会设置授权码,将这个授权码代替 ().login(user,password) 方法中的 password 即可。

错误 3:给多人发送邮件是,可能会出现 “AttributeError: 'list' object has no attribute 'encode'” 或者写了多个人,实际只给第一个人发了邮件等错误。

# 将所有的收件人邮箱写入到一个字符串中 msg['To'] = '1668010021@qq.com, 1572533878@qq.com, wangle@kyee.com.cn, 2685083419@qq.com' # 发送邮件时,通过字符串函数split分割,分割后返回的每一个邮箱账号 s.sendmail(from_addr=msg['From'], to_addrs=msg['To'].split(','), msg=m())

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何开启邮箱pop3,如何开启邮箱地址,如何开启邮箱pop3服务,如何开启邮箱pop服务,如何开启邮箱pop”边界阅读