Python + XML част 2

Съдържание
В първата част на тази урочна част ние установихме всички параметри, които трябва да имаме, за да можем да изпълним проекта, който посочихме в урока за изграждане на уебсайт, започвайки от XML файл.
Във втората част ще изпълним всичко планирано с помощта PythonПоради сложността на различните аспекти на проекта е възможно при първата ни реализация да няма да имаме всичко перфектно, но това е добре, тъй като ни дава възможност да създадем работещ прототип и да подобрим неговите компоненти.
Управление на съдържанието
Първото ни действие ще бъде да управляваме съдържанието на нашето XML файл, за това ще използваме SAX че вече сме го инсталирали или проверили, че го имаме в предишната част на урока.
За да постигнем това, първо създаваме контейнер, към който ще предадем нашия XML файл, който сме създали.
Нека да видим кода, който трябва да поставим:
 от xml.sax.handler импортирайте ContentHandler от xml.sax клас за анализ на импортиране TestHandler (ContentHandler): пропуснете парсинга ('website.xml', TestHandler ()) 

При изпълнение на това не трябва да имаме никакви грешки, това означава, че нашият XML вече е зареден и че анализатор свършил работата си, в случай че видим някаква грешка или изключение, трябва да се документираме, за да видим каква е причината, можем да разчитаме на интернет и обширната документация, която има Python.
Сега ще добавим метод, който ни показва, че това, което сме заключили, е вярно, в нашия клас TestHandler ще включим следния код:
 def startElement (self, name, attrs): име за печат, attrs.keys () 

Когато стартираме нашата програма отново, ще видим нещо подобно на това, което ни показва следното изображение:

Следващата стъпка е да получим информацията, която съдържа всеки елемент, за това ще включим методите на класа ContentHandler на SAX и ще получим H1 елементите, които съществуват в нашия XML файл.
Нашият клас трябва да бъде следният:
 от xml.sax.handler импортирайте ContentHandler от xml.sax клас за анализ на импортиране HeadlineHandler (ContentHandler): in_headline = False def __init __ (self, headlines): ContentHandler .__ init __ (self) self.headlines = headlines 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. xml ', HeadlineHandler (headlines)) print' Следното

Здрасти. Казвам се г -н Гамби и това е моята начална страница. Ето някои от моите интереси:

  • Викане
  • Спи
  • храня се

Ако го стартираме в браузър, ще видим, че е интерпретиран правилно и ще имаме резултат, подобен на следния:

Постигайки това, ние завършихме първата си итерация и този урок, от всеки зависи да разшири проекта, за да изглади всички получени знания и да подобри много повече тази първа програма.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave