Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Python Προγραμματισμός

Παραδείγματα Python XML Processing

Python χρησιμοποιεί το Document Object Model για την αποθήκευση και το χειρισμό των στοιχείων XML . Αναλύει αυτόματα κώδικα XML και δημιουργεί ένα αντικείμενο εγγράφου για να το μοντέλο , το οποίο περιέχει κόμβους XML . Η βιβλιοθήκη XML μπορεί στη συνέχεια να το βήμα μέσω του εγγράφου για να βρείτε διάφορα στοιχεία και χαρακτηριστικά . Μπορείτε να εισαγάγετε τη βιβλιοθήκη " xml.dom.minidom " προκειμένου να έχουν πρόσβαση στη βιβλιοθήκη της Python επεξεργασία XML DOM . Η πρόσβαση και η ανάγνωση ενός αρχείου XML
Η

XML βιβλιοθήκη της Python μπορεί να αναλύσει αυτόματα XML αρχεία κειμένου ή συμβολοσειρές κειμένου που αντιπροσωπεύουν ένα έγγραφο XML . Εδώ είναι ένα παράδειγμα του πώς να αναλύσει ένα αρχείο κειμένου XML και να αποθηκεύσετε το αποτέλεσμα ως Python αντικείμενο του εγγράφου :

xmlFile = ανοικτό ( " sample.xml " ) XmlDocument = xml.dom.minidom.parse ( xmlFile )

Αν θέλετε να αναλύσει μια σειρά από XML , θα πρέπει να έχετε τη λειτουργία " parseString " .

xmlString = " ένα διαφορετικό κόμβο " XmlDocument = xml.dom.minidom.parseString ( xmlString ) ?
εικόνων Πρόσβαση Element Nodes και παιδί Κόμβοι

τα στοιχεία XML αναπαριστώνται ως κόμβοι . Για να αποκτήσετε πρόσβαση σε ένα στοιχείο στο έγγραφο XML , θα πρέπει να το αναζητήσετε με βάση το όνομα με τη μέθοδο " getElementsByTagName , " π.χ. :

Searchresults = getElementsByTagName ( " ExampleNode " )

Αυτή η γραμμή κώδικα επιστρέφει ένα NodeList . Για να πάρετε μια ενιαία κόμβο στοιχείου , μπορείτε απλά να καλέσετε :

myNode = Searchresults [ 0 ] Ξενοδοχεία

κόμβοι μπορεί να περιέχει κόμβους παιδί . Μπορείτε να πάρετε μια λίστα των κόμβων του παιδιού δίνεται μια αναφορά σε ένα κόμβο γονέα , π.χ. :

myChildNodes = myNode.childNodes

Η Data και Χαρακτηριστικά
Η

να έχουν πρόσβαση στα δεδομένα που περιέχονται σε ετικέτες ανοίγματος και κλεισίματος ενός στοιχείου , πρέπει να έχετε πρόσβαση "δεδομένα " στον τομέα του αντικειμένου κόμβου . Για παράδειγμα , εάν ένας κόμβος που ονομάζεται " myNode » αντιπροσώπευε το κείμενο XML " sampletext " σε ένα έγγραφο , τότε θα μπορούσαν να εξαγάγουν η λέξη « sampletext " με αναφορά " . myNode.data " Για να αποκτήσετε πρόσβαση στις ιδιότητες αυτού του κόμβου , θα πρέπει πρώτα η πρόσβαση NamedNodeMap από τα χαρακτηριστικά ως εξής :

attrList = myNode.attributes

Έπειτα από αυτήν τη λίστα , μπορείτε να εξαγάγετε τα ονόματα και τις τιμές των ιδιοτήτων:

MyList = [ ] για i in range ( attrList.length ) : mylist.append ( attrList.item ( i ) . . όνομα + ' =' + attrList.item ( i) τιμή) print " ? " . join ( MyList )
εικόνων Γράφοντας κώδικα XML
Η

Μπορείτε να γράψετε ένα αντικείμενο κόμβου σε κάθε " εγγράψιμο " αντικείμενο χρησιμοποιώντας τη λειτουργία " writexml . " Αυτό περιλαμβάνει εγγράψιμο αρχεία . Ένα παράδειγμα είναι η εξής :

destinationFile = ανοικτό ( " samplewrite.xml " , " w " ) doc.writexml ( destinationFile ) destinationFile.close ( )

Μπορείτε επίσης να εκτυπώσετε το έγγραφο XML ως ένα string χρησιμοποιώντας την λειτουργία " toxml " ή " toprettyxml , " π.χ. :

doc.toxml print ()

ή

doc.toprettyxml εκτύπωσης ( )

η λειτουργία " toprettyxml » , χρησιμοποιεί τους χώρους και περιπτώσεις για να κάνουν το XML πιο ευανάγνωστο για τον άνθρωπο .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα