Форум сайта python.su
Какой лучше библиотекой пользоваться при работе с XML? Я имею в виду xmllib и лучше воспользоваться другой не из дистрибутива?
Офлайн
Офлайн
xmllib ситается устаревшей библиотекой. Парсер в ней для разбора xml использует рег. выражения, что делает
ее доволбно медленной(если попытаешся импортировать ее, то получишь DeprecationWarning). Для работы с xml надо пользоватся sax и dom парсерами из библиотеки xml(В python 2.5 она переименована в xmlcore), она в качестве backend`a использует expat написанный на C.
Отредактировано (Июль 28, 2006 13:25:05)
Офлайн
ElementTree юзай, встроенные и по скорости уступают и по возможности, темболее этот модуль уже в 2.5 будет
Офлайн
slav0nicКак я упомянул выше, модуль xml использует expat, а expat - один из лучших и самых быстрых sax парсеров, фактически его используют также в кач-ве backend`a xml модули PHP, Perl, гномовских библиотек и т.д. Так что я СИЛЬНО СОМНЕВАЮСЬ в том что ElementTree действительно выигрывает по скорости у xml.sax или xml.dom. Но все это ИМХО ;)
ElementTree юзай, встроенные и по скорости уступают и по возможности, темболее этот модуль уже в 2.5 будет
Офлайн
slivlencElementTree использует тот же самый expat. Но, на самом деле скорость парсера не так уж и важна в 90% случаев. Продуманность и удобство API - вот где собака порылась (с). Попробуйте когда нибудь поработать с ElementTree и вас будет тошнить уже на строчке “import xml…” :-)slav0nicКак я упомянул выше, модуль xml использует expat, а expat - один из лучших и самых быстрых sax парсеров, фактически его используют также в кач-ве backend`a xml модули PHP, Perl, гномовских библиотек и т.д. Так что я СИЛЬНО СОМНЕВАЮСЬ в том что ElementTree действительно выигрывает по скорости у xml.sax или xml.dom. Но все это ИМХО ;)
ElementTree юзай, встроенные и по скорости уступают и по возможности, темболее этот модуль уже в 2.5 будет
Офлайн
ну всегда есть выбор между удобвством и скоростью) каждый выбиарет своё
Офлайн
Если важна скорость, стоит глянуть
http://www.reportlab.org/pyrxp.html
Офлайн
А есть ли в этих библиотеках поддержка XSL?
Офлайн
Результаты тестирования различных модулей для работы с xml: http://effbot.org/zone/celementtree.htm
Офлайн