# -*- coding: utf-8 -*-
#!/usr/bin/python3
import smtplib
gmail_user = 'X@X'
gmail_password = 'XXX'
from_add = gmail_user
to = ["X@X"]
subject ="主旨(subject)"
body ="內容(content)"
email_text = """\
From: %s
To: %s
Subject: %s
%s
"""%(from_add, ", ".join(to), subject, body)
try:
smtpObj = smtplib.SMTP('smtp.gmail.com', 587)
smtpObj.ehlo()
smtpObj.starttls()
smtpObj.login(gmail_user, gmail_password)
smtpObj.sendmail(from_add, to, email_text)
smtpObj.close()
print('Email sent')
except UnicodeEncodeError as err:
print('{}'.format(err))
except:
print("err")
我得到了Unicodeer错误:
“ascii”编解码器无法对73-74位置的字符进行编码:序号不在范围内(128)
python3 defult编码不是“UTF-8”吗??
当我运行这个脚本时
实际上是蟒蛇。5.2
当我打印身体的类型,它是str
但是错误似乎是asciicode而不是python2的Unicode
thx
smtplib。SMTP。sendmail
要求其msg
参数为str
,仅包含ascii字符或字节
:
msg可以是包含ASCII范围内字符的字符串,也可以是字节字符串。使用ascii编解码器将字符串编码为字节,将单个\r
和\n
字符转换为\r\n
字符。不修改字节字符串。
您的消息是一个字符串,但in包含非ascii字符;您需要编码为字节:
smtpObj。sendmail(从添加到电子邮件文本编码('utf-8'))
我目前正在使用Django countries为表单字段获取ISO国家名称列表。它在我的网站上显示时没有错误,但在Django的管理网站上,由于存在非ASCII国家名称,它会导致上述错误: Unicode错误提示:无法编码/解码的字符串是:itan 我已经读到类似的问题可以通过属性来解决,但是如果不接触Django Admin本身,这似乎不是很可行。如果有人能解决这个问题,我将不胜感激。 Mode
问题内容: 我在处理从不同网页(在不同站点上)获取的文本中的字符时遇到问题。我正在使用。 问题是该错误并不总是可重现的。它有时可以在某些页面上使用,有时它会通过抛出来发声。我已经尝试了几乎所有我能想到的东西,但是我没有发现任何能正常工作而不抛出某种与相关的错误的东西。 导致问题的代码部分之一如下所示: 这是运行上述代码段时在某些字符串上生成的堆栈跟踪: 我怀疑这是因为某些页面(或更具体地说,来自某
问题内容: 我想解析我的XML文档。所以我将我的XML文档存储如下 现在我的下面是我的代码 我低于错误 问题答案: 看来您要达到UTF-8字节顺序标记(BOM)。尝试使用此Unicode字符串并提取出BOM: 我使用而不是因为在您的情况下您可能多次出现BOM表,这可能是由于串联的文件内容引起的。
当我测试从twitter上的数据挖掘时,我有一个麻烦,我通过Word搜索数据。 It错误 为什么会有这样的问题?
问题内容: 当我尝试将其串联时,当字段包含“ñ”或“´”时,出现UnicodeDecodeError。如果包含“ñ”或“´”的字段是最后一个,则不会有任何错误。 任何想法?非常感谢! 问题答案: 您正在编码为UTF-8,然后 重新 编码为UTF-8。Python仅在首先再次 解码 为Unicode时才能这样做,但它必须使用默认的ASCII编解码器: 不要继续编码;将编码保留为UTF-8 到最后一个
问题内容: 我正在尝试使用其中包含一些非标准字符的超大型数据集。根据工作规范,我需要使用unicode,但我感到困惑。(而且很可能做错了。) 我使用以下方式打开CSV: 然后,我尝试使用以下代码对其进行编码: 我正在对lat和lng以外的所有内容进行编码,因为它们需要发送到API。当我运行程序以将数据集解析为可以使用的数据时,将获得以下Traceback。 我想我应该告诉你我正在使用python