Русский
Открыть в Telegram

Пост ✈️ В Python BeautifulSoup4 (bs4) — это мощная библиотека для парсинга HTML и XML документов. Она предоставляет удобный и…

13 декабря 2024
P
Pythoner
Фотография
✈️ В Python BeautifulSoup4 (bs4) — это мощная библиотека для парсинга HTML и XML документов. Она предоставляет удобный интерфейс для навигации, поиска и модификации элементов в древовидной структуре документа. BeautifulSoup4 автоматически обрабатывает некорректный HTML, что делает её незаменимой для работы с реальными веб-страницами. ➡️ Применение BeautifulSoup4 широко распространено в веб-скрапинге, извлечении данных, анализе веб-контента и автоматизации задач, связанных с обработкой HTML и XML. Библиотека позволяет легко извлекать текст, ссылки, атрибуты и другие данные из веб-страниц. ➡️ Вот пример использования BeautifulSoup4 для парсинга HTML: from bs4 import BeautifulSoup html_content = """ <!DOCTYPE html> <html lang="en"> <head> <title>Example Page</title> <meta name="description" content="Example description"> </head> <body> <h1>This is a heading</h1> <p>This is some text in a paragraph.</p> <a href="https://www.example.com">This is a link</a> <ul> <li>Item 1</li> <li>Item 2</li> </ul> <div class="my-class">This is a div</div> <p id="my-id">This is a paragraph with id </p> </body> </html> """ soup = BeautifulSoup(html_content, "html.parser") # "html.parser" - используемый парсер # Навигация и поиск элементов: title = soup.title.string # Получение текста заголовка print("Title:", title) description = soup.find("meta", attrs={"name": "description"})["content"] print("Description:", description) links = soup.find_all("a") for link in links: print("Link:", link["href"]) paragraphs = soup.find_all("p") for p in paragraphs: print("Paragraph:", p.text) list_items = soup.find("ul").find_all("li") for item in list_items: print("List item:", item.text) div_with_class = soup.find("div", class_="my-class") print("Div with class:", div_with_class.text) paragraph_with_id = soup.find("p", id="my-id") print("Paragraph with id:", paragraph_with_id.text) # Модификация HTML: new_paragraph = soup.new_tag("p") new_paragraph.string = "This is a new paragraph." soup.body.append(new_paragraph) print(soup.prettify()) # Вывод измененного HTML с отступами ⬆️ В этом примере демонстрируется создание объекта BeautifulSoup из HTML-строки, получение заголовка, поиск элементов по тегам, атрибутам и классам, извлечение текста и атрибутов элементов, а также добавление нового элемента в HTML-структуру. Используется парсер "html.parser", который встроен в Python. Для более сложных случаев можно использовать другие парсеры, такие как lxml или html5lib. Вывод soup.prettify() позволяет увидеть форматированный HTML-код после внесенных изменений. 🐍 Pythoner
40 · 1.9K ·

Рядом в ленте

PPythonerОпросPPythoner🐍Разбор Что возвращает метод строки find()? Самый быстрый способ это узнать — заглянуть в документацию Python. Согласно официальной документации, если подстрока
это сообщение
PPythoner✈️ В Python dataclasses — это модуль, предоставляющий декоратор @dataclass, который автоматически генерирует шаблонный код для классов, преимущественно предназнPPythoner✈️ В Python FastAPI — это современный, высокопроизводительный веб-фреймворк для создания API. Он основан на стандартах OpenAPI и JSON Schema, что обеспечивает а

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем