网易企业邮箱
官方网站:https://mailh.qiye.163.com/
客户端设置
配置客户端授权密码
邮箱客户端授权密码是为了增强安全性,尤其是在使用第三方应用或服务访问电子邮件账户时。授权密码是一个特殊的密码,用于代替用户的主密码进行身份验证,目的是防止第三方应用或服务直接访问用户的主密码。
邮箱客户端授权密码作用
增强安全性:授权密码一般是一次性的或者是专门为特定应用生成的,这样即使某个第三方应用遭到攻击,黑客也无法利用主密码访问你的邮箱。避免主密码泄露:通过使用授权密码,你的主邮箱密码就不会被暴露给第三方应用,减少了泄露的风险。限定权限:一些邮箱服务允许生成多个授权密码,每个授权密码都可以限定特定的访问权限,比如只允许读取邮件、发送邮件等。防止账户被锁定:使用授权密码可以避免因为第三方应用的登录错误导致邮箱账户被锁定或触发安全警报。
网易企业邮箱设置客户端授权密码
常见问题:您的邮箱管理员已经强制关闭客户端授权密码服务,您已无法使用客户端授权密码在客户端登录。
开启客户端授权密码
生成授权密码
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMETextclass MailSender:def __init__(self, mail_user, mail_pass):self.smtp_host = 'smtphz.qiye.163.com' # 网易企业邮箱 SMTP 服务器地址self.smtp_port = 465 # 端口 465 支持 SSLself.mail_user = mail_user # 发件人邮箱self.mail_pass = mail_pass # 发件人邮箱的授权码(或者是密码)def send_code(self, code, to_email, email_type=''):if not self.mail_user or not self.mail_pass:print("邮箱账号或密码为空")return Falsetry:# 创建邮件内容msg = MIMEMultipart()msg['From'] = f'唤醒手腕实验室 <{self.mail_user}>'msg['To'] = to_emailmsg['Subject'] = '验证码'# 设置邮件正文(HTML 格式)html_content = f'''<html><body><p>您好!您的验证码是:<strong>{code}</strong></p><p>类型:{email_type}</p></body></html>'''msg.attach(MIMEText(html_content, 'html'))msg.attach(MIMEText("唤醒手腕实验室", 'plain'))# 使用 SSL 连接 SMTP 服务器并发送邮件with smtplib.SMTP_SSL(self.smtp_host, self.smtp_port) as server:print("正在连接到邮件服务器...")server.set_debuglevel(1) # 开启调试模式,打印出更多详细信息server.login(self.mail_user, self.mail_pass) # 登录邮件服务器server.sendmail(self.mail_user, to_email, msg.as_string()) # 发送邮件print("邮件发送成功")return Trueexcept smtplib.SMTPException as e:print(f"SMTP 错误: {e}")return Falseexcept Exception as e:print(f"邮件发送失败: {e}")return False# 使用示例
if __name__ == "__main__":sender = MailSender(mail_user=', mail_pass='')sender.send_code(code='123456', to_email='', email_type='验证码')
常见问题
邮件不符合 RFC 协议,通常是由于邮件格式、内容编码、标题格式等问题不符合 RFC 5321(SMTP)或 RFC 5322(Internet 消息格式)的规范。