【发布时间】:2014-06-18 07:04:30
【问题描述】:
我在尝试使用请求作为附件发送的文件中使用非 ascii 字符时遇到问题。
_send_output 函数中的 httplib 模块出现异常。 看这张图:
这是我的代码:
response = requests.post(url="https://api.mailgun.net/v2/%s/messages" % utils.config.mailDomain,
auth=("api", utils.config.mailApiKey),
data={
"from" : me,
"to" : recepients,
"subject" : subject,
"html" if html else "text" : message
},
files= [('attachment', open(f)) for f in attachments] if attachments and len(attachments) else []
)
问题在于文件参数,包含非 ascii 数据(希伯来语)。 图像中可以看到的异常是:
UnicodeDecodeError:“ascii”编解码器无法解码位置 673 中的字节 0xd0:序数不在范围内 (128)
【问题讨论】:
标签: python http encoding python-requests mailgun