2011-04-20 5 views
0
""" test.xml 

<xyz> 
     <pqr> 
     <abc><a href="data:text/html;charset=utf-8,base64,JTNjc2NyaXB0JTNlYWxlcnQoIlhTUyIpO2hpc3RvcnkuYmFjaygpOyUzYy9zY3JpcHQlM2UiPjwvYT4=</abc> 
     </pqr> 
     <pqr> 
     <abc><iframe src="data:text/html;charset=utf-8,base64,JTNjc2NyaXB0JTNlYWxlcnQoIlhTUyIpO2hpc3RvcnkuYmFjaygpOyUzYy9zY3JpcHQlM2UiPjwv</abc> 
     </pqr> 
<xyz> 

"""" 

Lorsque j'utilise ce fichier XML et que j'analyse en python, il montre une erreur (pas bien formé). Comment puis-je analyser ce fichier xml ou toute autre méthode pour obtenir les données de ce fichier.Ignorer le texte entre les balises XML

+0

Vous devez mettre en forme le code en mettant quatre espaces avant chaque ligne. Vous pouvez également le sélectionner et cliquer sur le bouton '{}'. Plus de conseils utiles sur la page [Markdown Editing Help] (http://stackoverflow.com/editing-help). –

Répondre

2

Vous pouvez modifier le code XML d'abord et utiliser CDATA pour inclure pas bien au format XML

exemple:

<xyz> 
     <pqr> 
     <abc><![CDATA[<a href="data:text/html;charset=utf-8,base64,JTNjc2NyaXB0JTNlYWxlcnQoIlhTUyIpO2hpc3RvcnkuYmFjaygpOyUzYy9zY3JpcHQlM2UiPjwvYT4=]]></abc> 
     </pqr> 
     <pqr> 
     <abc><![CDATA[<iframe src="data:text/html;charset=utf-8,base64,JTNjc2NyaXB0JTNlYWxlcnQoIlhTUyIpO2hpc3RvcnkuYmFjaygpOyUzYy9zY3JpcHQlM2UiPjwv]]></abc> 
     </pqr> 
<xyz> 

voir: http://www.w3schools.com/xml/xml_cdata.asp

Après cela, vous pouvez simplement utiliser l'analyseur XML python

+0

maintenant ça marche merci szymon –

0

Une inspection visuelle rapide de votre fragment XML, et deux choses ont sauté sur moi: votre XML n'est pas bien formé:

  • Votre fermeture élément <xyz> manque il est slash: il devrait être </xyz>
  • Votre <a> et éléments sont pas fermés.
1

La balise <xyz> est pas équilibrée (il y a deux balises d'ouverture) et la ligne test.xml est fausse. Votre tag <a> n'est pas fermé et son attribut href n'est pas cité. Même chose avec votre tag iframe. L'analyseur que vous utilisez devrait vous dire où il a rencontré l'erreur. Fixez-le et vous serez prêt à partir. Si vous voulez analyser xml, vous devez d'abord vous assurer qu'il s'agit de well formed XML. Souvent, il est possible de faire un peu de massage pour rendre un extrait de code autrement incomparable bien formé afin que vous puissiez utiliser un analyseur standard.

Questions connexes