Подтвердить что ты не робот

Чистая библиотека Python XSLT

Есть ли библиотека XSLT, которая является чистым Python?

Установка libxml2 + libxslt или любых подобных библиотек C является проблемой на некоторых платформах, которые мне необходимо поддерживать.

Мне действительно нужна только базовая поддержка XSLT, и скорость не является серьезной проблемой.

4b9b3361

Ответ 1

К сожалению, на данный момент нет чип-процессоров XSLT. Если вам требуется что-то более независимое от платформы, вы можете захотеть использовать Java-процессор XSLT, например Saxon. 4Suite работает над парсером XPath pure-python, но не выглядит, как чистый процессор XSLT будет отсутствовать в течение некоторого времени. Возможно, было бы лучше использовать некоторые функциональные возможности Python, чтобы попытаться приблизиться к существующей таблице стилей или изучить возможность использования Java.

Ответ 2

Я не думаю, что вы можете сделать это в cpython: нет чистых реализаций XSLT python.

Но вы можете тривиально сделать это в jython, используя встроенные XSLT-API JVM. Я написал сообщение в блоге о конкретном случае его выполнения в Google AppEngine, но указанный код должен работать под jython в любых обстоятельствах.

Преобразование с помощью XSLT в Google AppEngine и jython

http://jython.xhaus.com/transforming-with-xslt-on-google-appengine-and-jython/

НТН,

Алан.

Ответ 3

Вы посмотрели 4suite?

Ответ 4

Если вам нужна только базовая поддержка, а ваш XML не слишком сумасшедший, подумайте об удалении элемента XSLT из уравнения и просто используя парсер DOM/SAX.

Вот некоторая информация из PythonInfo Wiki:

[DOM] всасывает весь XML файл, хранит его в памяти и позволяет работать с этим. Sax, с другой стороны, испускает события по мере прохождения шаг за шагом файл.

Как вы думаете?

Ответ 5

Там также http://lxml.de/

"lxml - это самая многофункциональная и простая в использовании библиотека для обработки XML и HTML на языке Python".