Récupérer HTML à partir d'XML/XSL
Le
Doug713705

Bonjour à toutes, tous,
J'ai un fichier XML associé avec une feuille de style XSL qui s'affiche
parfaitement dans un navigateur (IE/Seamonkey/FF).
Évidemment lorsque j'affiche le code source de la page c'est le fichier
XML qui est affiché.
Or, j'aimerai pouvoir récupérer _le code HTML_ généré par la feuille de
style XSL.
Quelles options s'offrent à moi ?
Merci et bonne année à toutes, tous.
--
Le blues a dégrafé nos c½urs de cannibales
Dans ce drame un peu triste où meurent tous les Shakespeare
Le rouge de nos viandes sur le noir sidéral
Le rouge de nos désirs sur l'envers de nos cuirs
-- H.F. Thiéfaine, Loreleï Sebasto Cha
J'ai un fichier XML associé avec une feuille de style XSL qui s'affiche
parfaitement dans un navigateur (IE/Seamonkey/FF).
Évidemment lorsque j'affiche le code source de la page c'est le fichier
XML qui est affiché.
Or, j'aimerai pouvoir récupérer _le code HTML_ généré par la feuille de
style XSL.
Quelles options s'offrent à moi ?
Merci et bonne année à toutes, tous.
--
Le blues a dégrafé nos c½urs de cannibales
Dans ce drame un peu triste où meurent tous les Shakespeare
Le rouge de nos viandes sur le noir sidéral
Le rouge de nos désirs sur l'envers de nos cuirs
-- H.F. Thiéfaine, Loreleï Sebasto Cha
Je crois que c'est rappé...
Le navigateur interprétant directement le couple XML / XSL, je ne vois pas comment le récupérer...
--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
J'imaginais qu'il existait quelque part un script quelconque en perl,
python ou autre voire un module pour Firefox capable de faire ça.
J'imagine également que je ne suis pas le seul à avoir ce besoin.
--
Alors je rêve d'être un fusil, Un bazooka, un bombardier
Ou bien encore un champ de mines
Où tu viendrais te faire sauter
-- H.F. Thiéfaine, La queue
Avec php ça doit-être possible de mouliner XML+XSL et d'afficher le HTML
et donc le sauvegarder.
Avec Ruby aussi en utilisant saxon, par ex.
En cherchant un peu mieux j'ai trouvé en quelques lignes de python
import lxml.etree as ET
dom = ET.parse(xml_filename)
xslt = ET.parse(xsl_filename)
transform = ET.XSLT(xslt)
newdom = transform(dom)
print(ET.tostring(newdom, pretty_print=True))
Trouvé ici :
http://stackoverflow.com/questions/16698935/how-to-transform-an-xml-file-using-xslt-in-python
Merci.
--
Ton blues a dérapé sur mon corps de chacal
Dans cet hôtel paumé aux murs glacés d'ennui
Et pendant que le lit croise l'aéropostale
Tu me dis "Reprends ton fric. Aujourd'hui c'est gratuit.
-- H.F. Thiéfaine, Loreleï Sebasto Cha
Python avec libxml2 le fait, en quelques lignes de code:
<python code>
from libxml2 import parseFile
from libxslt import parseStylesheetDoc
doc = parseFile('page.xml')
style = parseStylesheetDoc(parseFile('style.xsl'))
htmlCode = style.applyStylesheet(doc, None)
print htmlCode
</python code>
--
Pierre Maurette