Python: ElementTree и undefined entity

При разборе XML с помощью библиотеки ElementTree иногда возникает ошибка undefined entity, если исходный документ содержит сущности HTML, например  .  Бороться с этим можно разными способами: использовать (или подменять) тип документа в обявлении DTD, предварительно проходиться по исходному коду и заменять сущности на соответствующие символы Unicode. В Python3 самым коротким способом мне показалось использовать стандартный словарь сущностей из модуля html.entities:




В Python2 подобный способ тоже, вероятно возможен, но имена модулей будут другими. Посмотреть изменения в именованиях модулей можно, например, на странице http://python3porting.com/stdlib.html

Популярные сообщения