Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python编码utf错误_Python_Encoding_Utf 8 - Fatal编程技术网

Python编码utf错误

Python编码utf错误,python,encoding,utf-8,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 deli

我正在发送一封电子邮件,要发送它,我需要获得三个变量-标题、提供商和供应商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')
但是,当我发送电子邮件时,主题编码正确,包括标题,但正文文本不正确,也包括标题。这就是它的样子:

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.
为什么正文中的标题编码不正确,我需要做什么更改才能使它看起来像第一个

更新:感谢您的反馈。这就是成功的原因:


MIMETextbody_text,'plain'->content=MIMETextbody_text,'plain',UTF-8'

设置消息的编码:

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

设置消息的编码:

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

尝试在文件顶部添加编码utf-8您如何发送电子邮件?电子邮件是否有适当的内容类型标题,标题中的字符集=utf-8?这似乎是一个文本编码问题。这里的问题是,在执行mime转换时,您试图将unicode字符隐式强制转换为ASCII。你尝试过MIMEText的其他值吗?我唯一尝试过的另一件事是content=MIMETextbody_text,“utf-8”,但在电子邮件中根本没有文本。try content=MIMETextbody_text,“plain”,“utf-8”。尝试在文件顶部添加编码utf-8。你是如何发送电子邮件的?电子邮件是否有适当的内容类型标题,标题中的字符集=utf-8?这似乎是一个文本编码问题。这里的问题是,在执行mime转换时,您试图将unicode字符隐式强制转换为ASCII。你尝试过MIMEText的其他值吗?我唯一尝试过的其他值是content=MIMETextbody_text,“utf-8”,但在电子邮件中根本没有文本。try content=MIMETextbody_text,“plain”,“utf-8”。