OK、Python の libxml2 バインディングのドキュメントは本当に****
. 私の問題:
XML ドキュメントは、Python の文字列変数に格納されます。文字列は Unicode のインスタンスであり、ASCII 以外の文字が含まれています。次のように、libxml2で解析したいと思います。
# -*- coding: utf-8 -*-
import libxml2
DOC = u"""<?xml version="1.0" encoding="UTF-8"?>
<data>
<something>Bäääh!</something>
</data>
"""
xml_doc = libxml2.parseDoc(DOC)
この結果で:
Traceback (most recent call last):
File "test.py", line 13, in <module>
xml_doc = libxml2.parseDoc(DOC)
File "c:\Python26\lib\site-packages\libxml2.py", line 1237, in parseDoc
ret = libxml2mod.xmlParseDoc(cur)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 46-48:
ordinal not in range(128)
ポイントはu"..."
宣言です。シンプルな に置き換えると、".."
すべて問題ありません。DOC
残念ながら、間違いなく Unicode インスタンスになるため、私のセットアップでは機能しません。
UTF-8 でエンコードされた文字列を解析するために libxml2 をどのように使用できるか知っている人はいますか?