您好我有unicode电子邮件的问题,当我尝试发送西班牙语单词时:"Añadir"或其他系统崩溃,我尝试在此链接上说的内容:Python 3 smtplib发送unicode字符而不是工作.
这是我的错误代码:
server.sendmail(frm, to, msg.as_string())
g.flatten(self, unixfrom=unixfrom)
self._write(msg)
self._write_headers(msg)
header_name=h)
self.append(s, charset, errors)
input_bytes = s.encode(input_charset, errors)
Run Code Online (Sandbox Code Playgroud)
UnicodeEncodeError:'ascii'编解码器无法编码位置7中的字符'\ xf1':序数不在范围内(128)
这是服务器上的代码:
msg = MIMEMultipart('alternative')
frm = "sales@bmsuite.com"
msg['FROM'] = frm
to = "info@bmsuite.com"
msg['To'] = to
msg['Subject'] = "Favor añadir esta empresa a la lista"
_attach = MIMEText("""Nombre:Prueba; Dirección:Calle A #12.""".encode('utf-8'), _charset='utf-8')
msg.attach(_attach)
server.sendmail(frm, to, msg.as_string())
server.quit()
Run Code Online (Sandbox Code Playgroud)
提前致谢.
您好我有一个包含unicode字符的大文件,当我尝试在Python 3中打开它时,这就是我的错误.
在add_rnc()中输入第47行"addRNC.py"
文件"addRNC.py",线路13,在初始化 用于rawDoc.readline()值:
文件"/usr/local/lib/python3.1/codecs.py",第300行,解码(结果,消耗)= self._buffer_decode(data,self.errors,final)
UnicodeDecodeError:'utf8'编解码器无法解码158位的字节0xd3:无效的连续字节
我尝试了一切,但没有工作,这里是代码:
rawDoc = io.open("/root/potential/rnc_lst.txt", 'r', encoding='utf8')
result = []
for value in rawDoc.readline():
if len(value.split('|')[9]) > 0 and len(value.split('|')[10]) > 0:
if value.split('|')[9] == 'ACTIVO' and value.split('|')[10] == 'NORMAL':
address = ''
for piece in value.split('|')[4:7]:
address += piece
if value.split('|')[8] != '':
rawdate = value.split('|')[8].split('/')
_date = rawdate[2]+"-"+rawdate[1]+"-"+rawdate[0]
else:
_date = 'NULL'
id = db.prepare("SELECT id FROM potentials_reg WHERE(rnc = '%s')"%(value.split('|')[0]))()
if len(id) == 0:
if _date == 'NULL':
db.prepare("INSERT …Run Code Online (Sandbox Code Playgroud) 你好我有一个字符串中的元组,我从PostgreSQL函数中复活>我想将它转换为元组但是它给了我一个错误,元组内部的真实字符串是一个EOF错误,代码就像这样.
eval('(4125, <html>
<body>
Heloo There!
<body>
</html>)')
Run Code Online (Sandbox Code Playgroud)
,这只是HTML的一个例子,因为真正的代码很大.我不想做一个因为很多角色因此可能让我的系统非常慢.
除了for或while之外,我对所有的想法持开放态度.
我有一个函数,使我需要使用SIMILAR TO带有变量的表达式的选择,我不知道如何做到这一点.这是代码:
DECLARE pckg_data cl_data;
DECLARE contacts contacts_reg%ROWTYPE;
DECLARE sim_name varchar;
BEGIN
SELECT client_reg._name,
client_reg.last_name,
client_reg.id_card,
client_reg.address
INTO pckg_data
FROM client_reg WHERE(client_reg._name = (cl_name ||' '|| cl_lastname));
RETURN NEXT pckg_data;
SELECT ('%'||cl_name || ' ' || cl_lastname ||'%') INTO sim_name;
FOR contacts IN SELECT contacts_reg.id
FROM contacts_reg, contactscli_asc, client_reg
WHERE(contacts_reg._name SIMILAR TO sim_name) LOOP
SELECT client_reg._name, client_reg.last_name, client_reg.id_card,
client_reg.address, client_reg.id
INTO pckg_data
FROM client_reg, contactscli_asc WHERE(contactscli_asc.contact = contacts.id
AND client_reg.id = contactscli_asc.client);
END LOOP;
END;
Run Code Online (Sandbox Code Playgroud)