Шапка общая

Класс парсинга в Python

Класс парсинга в Python
В парсере Python создается класс, который наследует базовый класс парсера и переопределяет необходимые методы. Вот пример кода, демонстрирующий, как создать его в парсере Python:

from html.parser import HTMLParser

class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
print("Start tag:", tag)
for attr in attrs:
print(" Attribute:", attr)

def handle_endtag(self, tag):
print("End tag :", tag)

def handle_data(self, data):
print("Data :", data.strip())

html = "<html><head><title>Example</title></head><body><h1>Hello, world!</h1></body></html>"
parser = MyHTMLParser()
parser.feed(html)

В этом примере мы создали класс MyHTMLParser, который наследует базовый класс HTMLParser. Мы переопределили методы handle_starttag, handle_endtag и handle_data, чтобы они выводили информацию о начальных тегах, закрывающих тегах и данных соответственно.

Затем мы создаем объект класса MyHTMLParser и передаем наш HTML-код в метод feed, чтобы запустить процесс парсинга. В результате мы получим следующий вывод:

Start tag: html
Start tag: head
Start tag: title
Data : Example
End tag : title
End tag : head
Start tag: body
Start tag: h1
Data : Hello, world!
End tag : h1
End tag : body
End tag : html

Класс MyHTMLParser может быть расширен для выполнения других задач парсинга, в зависимости от требований конкретного приложения.