Muhtemelen, probleminiz, onu iyi bir şekilde ayrıştırmış olmanızdır ve şimdi XML'in içeriğini yazdırmaya çalışıyorsunuz ve bazı yabancı Unicode karakterleri olduğundan yapamıyorsunuz. Unicode dizenizi önce ascii olarak kodlamayı deneyin:
unicodeData.encode('ascii', 'ignore')
'göz ardı etme' bölümü, ona sadece bu karakterleri atlamasını söyleyecektir. Python belgelerinden:
>>> u = unichr(40960) + u'abcd' + unichr(1972)
>>> u.encode('utf-8')
'\xea\x80\x80abcd\xde\xb4'
>>> u.encode('ascii')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeEncodeError: 'ascii' codec can't encode character '\ua000' in position 0: ordinal not in range(128)
>>> u.encode('ascii', 'ignore')
'abcd'
>>> u.encode('ascii', 'replace')
'?abcd?'
>>> u.encode('ascii', 'xmlcharrefreplace')
'ꀀabcd޴'
Bu makaleyi okumak isteyebilirsiniz: http://www.joelonsoftware.com/articles/Unicode.html , neler olup bittiğine dair temel bir öğretici olarak çok yararlı buldum. Okuduktan sonra, hangi komutları kullanacağınızı tahmin ediyormuş gibi hissetmeyi bırakacaksınız (ya da en azından benim başıma geldi).
unicode()
?