Я пытаюсь проанализировать xml-документы Medline, используя iterparse в модуле xml.etree.ElementTree. Все работает хорошо, за исключением того, что часть текста содержит символы, отличные от ascii. Я не вижу способа обработки юникода с помощью findtext. Какие-либо предложения?
xml.etree.ElementTree и текст поиска юникода
Ответы (2)
Вы пытались открыть файл с кодировкой utf8 flah:
fd = open('some.xml', mode='r', encoding='utf-8')
xml.etree.ElementTree.iterparse(fd)
Или используйте декодирование:
fd = open('some.xml', mode='r')
sio = StringIO(fd.read().decode("utf-8"))
xml.etree.ElementTree.iterparse(sio)
person
chown
schedule
03.11.2011
Я думаю, что это должно работать, но я все еще получаю ошибки. Следующий шаг — убедиться, что кодировка действительно UTF-8.
- person seandavi; 03.11.2011
Это был очень полезный пост в дополнение к ответу выше.
Чтение символов utf-8 из файла gzip в python< /а>
person
seandavi
schedule
03.11.2011