Python - HTMLParser

Съдържание
При извършване на работа с анализатор в Python препоръчително е, ако работим с документи HTML използвайте стандарт XHTML, тъй като последният е по -строг, когато става въпрос за работа с отварящите и затварящите тагове на елементите, с това можем да направим програмите по -лесни, които могат да интерпретират това.
В Python имаме на разположение HTMLParser, това не трябва да се бърка с класа със същото име на модул htmllib, тъй като първата е част от стандартната библиотека, когато получаваме документ от Подредено можем да използваме HMTLParser за да можете да разглеждате съдържанието му.
Използване на HTMLParser
Използвай HTMLParser, това наистина означава подкласиране, така че да можем да презапишем методите в наше удобство и по този начин да можем да отговорим на нашите изисквания, нека видим по -долу списък на основните методи, които получаваме, когато използваме HTMLParser.
  • handle_starttag (таг, attrs): Когато се намери начален маркер attrs е поредица от двойки (име, стойност).
  • handle_startendtag (маркер, attrs): Използва се за празни етикети. По подразбиране той обработва стартирането и изключването отделно.
  • handle_endtag (маркер): Използва се, когато се намери затварящ маркер.
  • handle_data (данни): Използва се, когато открием текстови данни.
  • handle_charref (ref): Използва се при работа с препратки към символи от формата & # ref;.
  • handle_entityref (име): Използваме го, когато имаме препратки към обекти от формата & name;.
  • handle_comment (данни): Извиква се само когато има коментирано съдържание.
  • handle_decl (decl): Използва се за декларации на формуляра.
  • handle_pi (данни): Използва се за обработка на инструкции.
След като видяхме основните методи на HTMLParserСлед това ще видим изображение с пример за код и след това ще обясним от какво се състои:

Увеличете

Първото нещо, което забелязваме, е, че за това Остъргване на екрана няма да използваме ПодреденоТова е така, защото HTML, който ще инспектираме, не е лошо оформен, тогава виждаме, че първото нещо, което декларираме, са някои булеви променливи, с които ще контролираме дали сме вътре в елемент H4 или в елемент на връзка или връзка.
Имаме нещо по -специално с метода handle_dataТъй като сме в реална среда, трябва да се подготвим за най -сложните сценарии и с това имаме предвид, че тъй като е почти сигурно, че няма да получим необходимата информация при първото обаждане, ние подготвяме този метод, за да можем да го получим на части, след като получим всичко, което правим, е да се присъединим към данните.
Действието на нашата програма започва, когато извикаме метода емисия () към който предаваме текста, който е съдържанието на уеб страницата, който получаваме с метода urlopen () и когато всичко това е обработено, пристъпваме към извикване на метода close ().
Накрая с това постигнахме програма от Остъргване на екрана по -четими от използването на регулярни изрази и малко по -стабилни в аспекта, че не се ограничаваме до неподвижни структури, с това можем да получим нашата информация правилно.
С това завършваме нашия урок за HTMLParser, тъй като можем да видим, че има много начини да се стигне до тези решения, за да се получи информацията от уеб страница.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка

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

wave wave wave wave wave