我从一个网页上得到了一个单词“Zápas”。问题是我的数据中最接近的版本看起来像:Windows-1250编码后的Z \ xe1pas。
没有该str(a),就会出现一些ANSI错误。
谢谢您的帮助。
我的尝试:
def encode(text):
return text.encode('windows-1250')...
...
for cell in row.findAll(['td', 'th']):
cell=encode(cell.get_text().strip())
a.append(cell)
foo.write(str(a)+"\n")
最佳答案
a
字符串实际上可能是unicode字符串。要将其写入字节流,应使用指定的编码将其编码为字节字符串,在您的情况下为windows-1250
,在我的情况下为utf-8
。只需使用a.encode(<encoding>) before sending result to the
foo.write()`:
foo.write(a.encode("utf-8"))
另外,在发送数据“外部”(文件,远程目标等)之前,我会立即处理
unicode
中的所有数据转换为字节字符串。关于python - 编码斯洛伐克字母,例如:ášČé,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32752008/