如何将二进制文件中的utf8代码转换为python3中的html代码

2024-04-25 22:44:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在处理的HTML文件通常是utf-8,但是有一些损坏的编码,因此无法转换为Unicode。我的想法是将它们解析为二进制,并在第一步用html代码替换所有正确的utf-8编码。你知道吗

e.g. "\xc2\xa3" to £

在第二步中,我将用正确的编码替换损坏的编码。你知道吗

我第一步就卡住了。替换单个字符可使用替换:

string.replace(b'\xc3\x84', b'Ä')

从表中获取代码映射是行不通的。读取表时,utf-8代码被转义(b'\xc3\x84',我找不到摆脱双斜杠的方法。你知道吗

我可以想出一些肮脏的方法来解决这个问题,但应该有一个干净的,不是吗?你知道吗


Tags: 文件to方法代码编码htmlunicode二进制
1条回答
网友
1楼 · 发布于 2024-04-25 22:44:54

最好的方法是对它们进行预过滤

iconv -t utf8 -c SRCFILE > NEWFILE

或者用python

 with open("somefile_with_bad_utf8.txt","rt",encoding="utf-8",errors="ignore") as myfile:
for line in myfile:
  process()

我本来想说总是使用python3的utf-8,但我看到你已经。你知道吗

希望对你有帮助。。。。你知道吗

相关问题 更多 >