Python编码utf错误

标签 python encoding utf-8

我正在发送一封电子邮件,为了发送它,我需要获取三个变量——标题、提供商和供应商 ID。这就是我得到它的方式:

# # -*- coding: utf-8 -*-
...
## subject
title = title.encode('utf-8')
subject = "%s - %s"%(provider, title)
msg['Subject'] = subject

## content
body_text = "The following has been successfully delivered:\n\nVendor ID: %s\nProvider: %s\nTitle: %s\n\nThank you."%((vendor_id, provider, title))
content = MIMEText(body_text, 'plain')

但是,当我发送电子邮件时,主题编码正确(包括标题),但 body_text 编码不正确(也包括标题)。它看起来是这样的:

Subject: testmovieprovider - Une soirée d'enfer

Body: The following has been successfully delivered:

Vendor ID: 02352_FR
Provider: testmovieprovider
Title: Une soirée d'enfer   <------ why is this happening?

Thank you.

为什么正文中的标题编码不正确,我需要更改什么才能使其看起来像第一个?

更新:感谢您的反馈。这是有效的:

MIMEText(body_text, 'plain') --> content = MIMEText(body_text, 'plain', 'UTF-8')

最佳答案

设置消息的编码:

content = MIMEText(body_text, 'plain', 'utf-8')

关于Python编码utf错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9762315/

相关文章:

python - 在 Azure 函数中使用 python 进行 Gremlin 操作

python - APScheduler(高级Python调度器) ImportError : No module named scheduler

r - 使用R转换文件编码? (ANSI到UTF-8)

Python 字符编码欧洲口音

python - 数据流的命令术语?

Python:rsync 排除在脚本中不起作用,在 bash shell 中起作用

python - 如何使用我自己的语料库文本创建和拟合 vocab.bpe 文件(GPT 和 GPT2 OpenAI 模型)?

html - 在 Emacs/Elisp 中解码 HTML 实体

php - 将数据库编码修复为 UTF8

python - 在 pyspark 中关闭强制 UTF8 编码