2012-10-15 6 views
0

que j'ai rencontré un fragment XML »qui ressemble à ceci (en retrait et en abrégé - le ... attestez tags):parsing « XML » avec des articles numérotés

<items>"Std Stability" 
    <items[1]> 
    <id>-2</id> 
    ... 
    </items[1]> 
    <items[2]> 
    <id>-5</id> 
    </items[2]> 
    ... 
</items> 

Les [1] numéros obstruent l'analyseur J'utilise (lxml). Y a-t-il un format similaire où ceux-ci sont valides? Ou devrais-je écrire un analyseur personnalisé pour le gérer?

Je n'ai aucun contrôle sur le format et la documentation ne décrit ni ne nomme réellement le format.

Répondre

2

Ce document XML n'est pas valide et vous ne pourrez pas le traiter à l'aide d'un analyseur compatible Xml. Je n'ai jamais vu un format comme celui-ci auparavant, donc je ne sais pas quels outils utiliser pour le traiter. Je suppose qu'ils ont un analyseur Xml-ish "fait maison" que vous voudrez probablement utiliser pour être capable de lire ceci. Du point de vue Xml - dans ce cas, vous voulez toujours que l'entrée soit fixée à la source. Venir avec la réparation de quelque chose comme ça de votre côté pour le rendre valide xml conduit généralement à des problèmes.

+0

Merci. J'ai implémenté un analyseur minimal utilisant pyparsing qui fait le travail pour le moment. –