Re: [問題] xml 編碼問題
這是HTML escape sequence
使用HTMLParser來解碼
from HTMLParser import HTMLParser
hp = HTMLParser()
s = hp.unescape('Hélène')
※ 引述《sandwichC (沒回應=掛站)》之銘言:
: 我想 parse 一個 xml 檔,該檔的編碼方式未知
: 該檔中有這樣的文字:
: Hélène
: 它代表的是:Helene
: 其中第一個e上面有右上到左下的斜線,第二個e上面是左上到右下的斜線
: 也就是說,é 和 è 分別代表兩個特別的字元
: 用以下命令得知我的 terminal 輸出是 utf8
: $ echo $LANG
: en_US.UTF-8
: 我在 Python 試過下面的方式但都印不出正確的字元
: > n = 'Hélène'
: > print n.decode('iso-8859-1')
: Hélène
: > print n.decode('iso-8859-1').encode('utf8')
: Hélène
: 請問,讀入這個字串後,該怎麼在螢幕上印出正確的字元呢?
: 謝謝
: ----
: UPDATE:
: 我發現把 é 換成 \xe9, è 換成 \xe8後,可正確輸出
: > n = 'H\xe9l\xe8ne'
: > print n.decode('iso-8859-1').encode('utf8')
: Helene
: 第一個和第二個 e 的上面有正確顯示斜線
: 這意思是我要自己 prase string 把 &#x???; 代換成 \x?? 嗎
: 感覺應該有更好的解法吧…?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.205.239.47
推
08/07 23:29, , 1F
08/07 23:29, 1F
Python 近期熱門文章
PTT數位生活區 即時熱門文章