Question

Existe-t-il une bibliothèque XSLT en pur Python?

L'installation de libxml2 + libxslt ou de toute bibliothèque C similaire est un problème sur certaines des plates-formes que je dois prendre en charge.

Je n'ai vraiment besoin que du support de base de XSLT, et la vitesse n'est pas un problème majeur.

Était-ce utile?

La solution

Malheureusement, il n’existe actuellement aucun processeur XSLT en python pur. Si vous avez besoin de quelque chose de plus indépendant de la plate-forme, vous pouvez utiliser un processeur XSLT basé sur Java, tel que Saxon . 4Suite travaille sur un analyseur XPath pur en python, mais il ne semble pas qu'un processeur XSLT pur sera absent pendant un certain temps. Peut-être serait-il préférable d'utiliser certaines des fonctionnalités de Python pour tenter de se rapprocher de la feuille de style existante ou d'examiner la possibilité d'utiliser Java à la place.

Autres conseils

Je ne pense pas que vous puissiez le faire dans cpython: il n'y a pas d'implémentations XSLT python pures.

Mais vous pouvez le faire en jython en utilisant les API XSLT intégrées de la machine virtuelle. J'ai écrit un article de blog pour le cas spécifique de le faire sur Google AppEngine, mais le code fourni devrait fonctionner sous jython dans tous les cas.

Transformation avec XSLT sur Google AppEngine et jython

http://jython.xhaus.com / transformation-avec-xslt-on-google-appengine-and-jython /

HTH,

Alan.

Avez-vous consulté 4suite ?

Si vous avez seulement besoin d'une prise en charge de base et que votre code XML n'est pas trop fou, envisagez de supprimer l'élément XSLT de l'équation et d'utiliser simplement un analyseur DOM / SAX.

Voici quelques informations sur le Wiki PythonInfo :

  

[DOM] aspire un fichier XML entier,   le garde en mémoire et vous permet de travailler   avec ça. Sax, en revanche, émet   les événements comme il va étape par étape à travers   le fichier.

Qu'en pensez-vous?

Il existe également http://lxml.de/

  

"LXML est la bibliothèque la plus riche en fonctionnalités et facile à utiliser pour le traitement de XML et HTML en langage Python."

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top