我是这种语言的新手,在通过python发送电子邮件时遇到了一些麻烦,我的代码如下:
import smtplib
server=smtplib.SMTP("smtp.gmail.com",587)
server.starttls()
server.login('username','password')
message = "hi there"
server.sendmail('username', 'username', message)
server.quit()
我的系统是: 在Win32上使用Python 3.7.0(v3.7.0:1bf9cc5093,Jun 27 2018,04:06:47)[MSC v.1914 32位(Intel)]
我得到的输出是:
Traceback (most recent call last):
File "C:\pythonfiles\testmail - kopia.py", line 6, in <module>
server=smtplib.SMTP("smtp.gmail.com",587)
File "C:\python\lib\smtplib.py", line 261, in __init__
fqdn = socket.getfqdn()
File "C:\python\lib\socket.py", line 676, in getfqdn
hostname, aliases, ipaddrs = gethostbyaddr(name)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in
position 4: unexpected end of data
我的计算机名由字母é组成,我可以做些什么吗?我已经通过记事本将该文件保存到UTF-8。
有什么想法吗?
干杯安德烈
答案 0 :(得分:0)
utf-8可能不是正确的编码。 解析包括法文的文件等时,这是当前的问题(我想是您提到的情况)
我通常通过以下方式解决此问题:
mystring = 'gdjéàếè'
new_string = mystring.encode('iso-8859-1')
否则,您可能需要检查一下:Custom Google Cloud SQL