Преобразование HTML в объект BeautifulSoup



Когда осуществляется запрос HTML-кода страницы, например, при помощи библиотеки requests, передается сырой HTML-текст, который достаточно сложно анализировать. Для упрощения работы с такими данными и используется BeautifulSoup.

Принцип работы

BeautifulSoup берет сырой HTML-текст и конвертирует его в удобную для работы структуру. Главная особенность – формируется дерево элементов, в котором каждый элемент страницы представляет собой отдельный объект. К примеру, есть следующий код:

<html>
    <head>
        <title>Мой сайт</title>
    </head>
    <body>
        <div class="content">
            <p>Привет, мир!</p>
        </div>
    </body>
</html>

Если передать данный код в BeautifulSoup, будет создано дерево объектов. Это позволяет перемещаться по такому дереву, получая доступ к нужным элементам. Пример работы:

from bs4 import BeautifulSoup
html = """
<html>
    <head>
        <title>Мой сайт</title>
    </head>
    <body>
        <div class="content">
            <p>Привет, мир!</p>
        </div>
    </body>
</html>
"""

soup = BeautifulSoup(html, 'html.parser')
title_tag = soup.title
print(title_tag.text)  # Выведет: Мой сайт


Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: