Lex_lht 2020-06-11 19:13 采纳率: 0%
浏览 217

python 发送邮件时提示编码有误

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

import traceback
import sys

def send_email(subject, receiver, html_message):   
    msg = MIMEMultipart('alternative')
    html_message = "你好"
    subject = "测试"
    msg['Subject'] = Header(subject, 'utf-8')
    msg['From'] = "我是谁"
    msg['To'] = "XXXX@163.com"
    html = MIMEText(html_message.encode('utf-8'), 'plain', 'utf-8')
        # 一开始想用html格式的邮件,但是编码死活弄不对,试了试plain还是不行
    msg.attach(html)
    try:
        smtp_obj = smtplib.SMTP()
        smtp_obj.connect(DefaultConfig.MAIL_HOST, 25)    # 25 为 SMTP 端口号
        smtp_obj.login(xxx, *****)
        smtp_obj.sendmail(xxxx, xxxxx, msg.as_string())
        smtp_obj.quit()
        logger.info("邮件发送成功")
    except smtplib.SMTPException as e:
        logger.error(e)
        logger.error("Error: 无法发送邮件")
    except Exception as e:
        exc_type, exc_value, exc_traceback_obj = sys.exc_info()
        traceback.print_tb(exc_traceback_obj)

报错信息为:

File "E:\Coding\tools\backend\lextool\utils\send_email.py", line 36, in send_email
    smtp_obj.sendmail(DefaultConfig.MAIL_USER, receiver, msg.as_string())
  File "D:\win10\ANACONDA\lib\smtplib.py", line 855, in sendmail
    msg = _fix_eols(msg).encode('ascii')
127.0.0.1 - - [11/Jun/2020 19:04:59] "POST /user/register HTTP/1.1" 200 -
  File "E:\Coding\tools\backend\lextool\utils\send_email.py", line 36, in send_email
    smtp_obj.sendmail(DefaultConfig.MAIL_USER, receiver, msg.as_string())
  File "D:\win10\ANACONDA\lib\smtplib.py", line 855, in sendmail
    msg = _fix_eols(msg).encode('ascii')
127.0.0.1 - - [11/Jun/2020 19:05:08] "POST /user/register HTTP/1.1" 200 -

邮件正文有汉语的时候就会报错,全是英语的时候就不报错了,有哪位大神帮忙看下呀

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-06-11 22:46
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 对于这个问题的解释说明
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。