Форум сайта python.su
Есть следующая задача:
Пропарсить xml, найти в нем теги , например, такие:
<something class="some_class" name="some_name">
<property name="is_item" stdset="0">
<bool>true</bool>
</property>
Отредактировано (Сен. 30, 2011 11:23:37)
Офлайн
возмите lxml
Офлайн
Офлайн
В батарейках xml есть, зачем тянуть/собирать этот lxml?!
Парсить можно в разные типы деревьев/документов: dom и etree (начиная с py2.5). Моя религия не позволяет работать мне с etree, но других она не останавливает :-).
..bw
Отредактировано (Сен. 30, 2011 16:23:25)
Офлайн
bwОн:
зачем тянуть/собирать этот lxml?
Офлайн
1. Преждевременная оптимизация зло, нужно думать головой а не чьими-то бложиками.
2. Субъективно. В батарейках есть DOM и ElementTree, выбирай что хочешь и не нужны дополнительные зависимости.
3. У XML не должно быть кривой структуры. А если говорить про HTML, то lxml отсасывает у html5lib, и по этому параметру не годится.
..bw
Офлайн
bwИспользование хорошо оптимизированных библиотек не есть предварительная оптимизация, ссылку привел как пример - первое что выпало по запросу.
1. Преждевременная оптимизация зло, нужно думать головой а не чьими-то бложиками.
bwЯ не претендую на объективность, ТС спросил - я ответил.
2. Субъективно. В батарейках есть DOM и ElementTree, выбирай что хочешь и не нужны дополнительные зависимости.
bwНо она может быть. И то что lxml умеет переваривать и плохую/неправильную структуру xml / html является достоинством
3. У XML не должно быть кривой структуры.
bwПруф?
А если говорить про HTML, то lxml отсасывает у html5lib, и по этому параметру не годится
Офлайн
Не очень силен в этих вопросах, но разница есть еще в том что lxml поддерживает еще один интерфейс - objectify. См что мне подсказал dimabest http://python.su/forum/viewtopic.php?id=12494. Это сильно упростило мне жизнь (просто удобнее пользоваться)
Офлайн