猿问

HTML 实体似乎包含无意义内容

신영 Ã¬â€¢Ë†

上面是html,下面是代码。这是一个名字吗?这是什么意思?

신옠안


MMTTMM
浏览 92回答 1
1回答

梵蒂冈之花

您有一个双重 Mojibake,由于使用不正确的编解码器而损坏了数据。它实际上是韩语,一个名字:신영 안或者,如果使用 HTML 实体,则应将其编码为&#49888;&#50689; &#50504;它翻译成英文为Shin-Young An。当编码为 UTF-8并按输入代码点分组然后使用十六进制数字显示时,您将得到以下结果:ec 8b a0ec 98 8120ec 95 88为了产生你所拥有的输出,有人必须具备:使用Windows 代码页 1252 解码上述 UTF-8 数据,产生ì‹<A0>ì˜<81> 안(其中<A0>是不间断空格字符,并且<81>是无效的 CP1252 字节,但这在许多解码器中经常被忽略;我已将它们包含在此表示法中,因为否则它们将无法打印)将产生的混乱再次编码为 UTF-8,得到以下字节值:c3 ac e2 80 b9 c2 a0c3 ac cb 9c c2 8120c3 ac e2 80 a2 cb 86(分组与上面正确的 UTF-8 匹配)使用相同的 Windows CP1252 编解码器第二次解码这些 UTF-8 字节,这次生成:ì‹Â<A0>ì˜Â<81> 안<A0>(与和字符上的注释相同<81>)最后将结果字符编码为 HTML 实体:&#195;&#172;&#226;&#8364;&#185;&#194;&#160;&#195;&#172;&#203;&#339;&#194;&#129; &#195;&#172;&#226;&#8364;&#162;&#203;&#8224;如果您安装了 Python,那么该ftfy库可以一步“修复”文本,如下所示:>>> import ftfy>>> sample = '&#195;&#172;&#226;&#8364;&#185;&#194;&#160;&#195;&#172;&#203;&#339;&#194;&#129; &#195;&#172;&#226;&#8364;&#162;&#203;&#8224;'>>> ftfy.ftfy(sample)'신영 안'我使用该库来告诉我使用了哪些编解码器,并使用它的草率 CP1252 解码器来生成上面的解码。例如,对于您的输入,我使用了:>>> ftfy.fixes.fix_encoding_and_explain(ftfy.fixes.unescape_html(sample))('신영 안', [('encode', 'sloppy-windows-1252', 0), ('decode', 'utf-8', 0), ('encode', 'sloppy-windows-1252', 0), ('decode', 'utf-8', 0)])看到修复计划,并反向解释了 Mojibake 最初是如何生产的。
随时随地看视频慕课网APP

相关分类

Html5
我要回答