Python + XML Teil 2

Inhaltsverzeichnis
Im ersten Teil dieses Tutorial-Teils haben wir alle Parameter festgelegt, die wir benötigen, um das Projekt ausführen zu können, das wir im Tutorial zum Erstellen einer Website ausgehend von einer XML-Datei angegeben haben.
In diesem zweiten Teil werden wir alles umsetzen, was mit geplant ist PythonAufgrund der Komplexität der verschiedenen Aspekte des Projekts ist es möglich, dass wir bei unserer ersten Implementierung nicht alles perfekt haben. Dies ist jedoch gut, da wir so die Möglichkeit haben, einen funktionierenden Prototyp zu erstellen und seine Komponenten zu verbessern.
Inhalte verwalten
Unsere erste Aktion besteht darin, den Inhalt unserer XML-Datei, dafür verwenden wir SAXOPHON dass wir es bereits im vorherigen Teil des Tutorials installiert oder überprüft hatten, dass wir es hatten.
Dazu erstellen wir zunächst einen Container, an den wir unsere erstellte XML-Datei übergeben.
Sehen wir uns den Code an, den wir platzieren müssen:
 from xml.sax.handler import ContentHandler from xml.sax import Parse-Klasse TestHandler (ContentHandler): pass parse ('website.xml', TestHandler ()) 

Bei der Ausführung sollten wir keine Fehler haben, d.h. unser XML ist bereits geladen und die Parser hat seine Arbeit gemacht, sollten wir Fehler oder Ausnahmen sehen, müssen wir uns selbst dokumentieren, um die Ursache zu finden, wir können uns auf das Internet und die umfangreiche Dokumentation verlassen Python.
Jetzt fügen wir in unserer Klasse eine Methode hinzu, die uns zeigt, dass das, was wir abgeleitet haben, wahr ist TestHandler Wir werden folgenden Code einbinden:
 def startElement (self, name, attrs): print name, attrs.keys () 

Wenn wir unser Programm erneut ausführen, sehen wir ungefähr das, was uns das folgende Bild zeigt:

Der nächste Schritt besteht nun darin, die Informationen zu erhalten, die jedes Element enthält. Dazu werden wir die Methoden der Klasse einbinden ContentHandler von SAX und wir werden die H1-Elemente erhalten, die in unserer XML-Datei vorhanden sind.
Unsere Klasse sollte wie folgt aussehen:
 aus xml.sax.handler import ContentHandler aus xml.sax import Parse-Klasse HeadlineHandler (ContentHandler): in_headline = False def __init __ (self, Schlagzeilen): ContentHandler .__ init __ (self) self.headlines = Schlagzeilen self.data = [ ] def startElement (self, name, attrs): if name == 'h1': self.in_headline = True def endElement (self, name): if name == 'h1': text = '' .join (self.data ) self.data = [] self.headlines.append (text) self.in_headline = Falsche Def-Zeichen (self, string): if self.in_headline: self.data.append (string) headlines = [] parse ('website. xml', HeadlineHandler (Überschriften)) print 'Die folgenden

Hi. Mein Name ist Mr. Gumby, und dies ist meine Homepage. Hier einige meiner Interessen:

  • Schreien
  • Schlafen
  • Essen

Wenn wir es in einem Browser ausführen, sehen wir, dass es richtig interpretiert wird und wir haben ein Ergebnis ähnlich dem folgenden:

Um dies zu erreichen, haben wir unsere erste Iteration und dieses Tutorial abgeschlossen. Es liegt an jedem, das Projekt zu erweitern, um das gesamte erworbene Wissen zu verfeinern und das erste Programm noch weiter zu verbessern.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave