Друзья, вы когда-нибудь задумывались, как получить данные с веб-страниц? В этом посте мы посмотрим на библиотеку BeautifulSoup, которая помогает извлекать информацию из HTML и XML документов. Давайте создадим небольшой скрипт, который будет извлекать заголовки новостей с сайта!
Установка BeautifulSoup
Для начала установим необходимые библиотеки. Если у вас их еще нет, выполните команду:
pip install beautifulsoup4 requests
Код программы
import requests # Импортируем библиотеку для отправки HTTP запросов
from bs4 import BeautifulSoup # Импортируем BeautifulSoup для парсинга HTML
# URL сайта, откуда мы будем извлекать данные
url = '
# Отправляем GET-запрос к указанному URL
response = requests.get(url)
# Проверяем, успешен ли запрос
if response.status_code == 200:
# Создаем объект BeautifulSoup для парсинга HTML
soup = BeautifulSoup(response.content, 'html.parser')
# Находим все заголовки новостей
headlines = soup.find_all('a', class_='storylink')
# Выводим заголовки на экран
for index, headline in enumerate(headlines, start=1):
print(f"{index}. {headline.get_text()}") # Получаем текст заголовка
else:
print("Не удалось получить данные с сайта.")
Объяснение кода
1. Импорт библиотек: Мы импортируем requests для работы с HTTP-запросами и BeautifulSoup для парсинга HTML.
2. URL: Указываем адрес сайта, откуда будем получать данные.
3. GET-запрос: Отправляем запрос и проверяем код ответа с помощью response.status_code. Если код 200, значит, запрос успешен.
4. Парсинг HTML: Используем BeautifulSoup для парсинга полученного HTML контента.
5. Извлечение заголовков: Команда soup.find_all находит все элементы с классом storylink, возвращая список заголовков.
6. Вывод заголовков: С помощью цикла for выводим номера и текст заголовков на экран.
Таким образом, используя несколько строк кода, мы получили заголовки новостей с сайта! Это отличный способ научиться веб-скрапингу.