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 -

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

https://cloud.tencent.com/developer/article/1541116