Я пытаюсь проанализировать содержание иврита от json до xml и от xml до json. Когда я делаю это:using xml2json с данными на иврите
>>> from xml2json import json2xml
>>> json = {"test": "בדיקה"}
>>> json2xml(json)
Я получаю ошибку:
Traceback (most recent call last):
File "<pyshell#43>", line 1, in <module>
json2xml(json)
File "C:\Python27\lib\xml2json.py", line 182, in json2xml
return ET.tostring(elem)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 1126, in tostring
ElementTree(element).write(file, encoding, method=method)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 820, in write
serialize(write, self._root, encoding, qnames, namespaces)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 937, in _serialize_xml
write(_escape_cdata(text, encoding))
File "C:\Python27\lib\xml\etree\ElementTree.py", line 1073, in _escape_cdata
return text.encode(encoding, "xmlcharrefreplace")
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe1 in position 0: ordinal not in range(128)
я пытался кодировать и декодировать с utf8, но не кажется, что это будет работать ... я использую питон 2,7
Я предполагаю, что это сам xml2json сценарий, он возвращает 'ET.tost ring (elem) ', который должен быть' ET.tostring (elem, encoding = "utf-8") '?! –
Какую версию xml2json вы используете? Вы установили его с помощью 'pip'? В моей среде 2.7 «pip install xml2json» устанавливает совершенно другой xml2json. –
Чтобы ответить на мой собственный вопрос, OP использовал 'pip install https: // github.com/hay/xml2json/zipball/master' из https://github.com/hay/xml2json –