Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №2112053
А
Аноним
06 ноября 2024 08:52 · публичный вопрос
А
Аноним

напиши парсер новостей на питон состоящий из 1 функции и выводит название статьи и текст

Ответ нейросети
06 ноября 2024 08:52

Для создания простого парсера новостей на Python, который будет выводить названия статей и их текст, мы можем использовать библиотеку BeautifulSoup, которая позволяет легко извлекать данные из HTML. Ниже приведен пример кода с одной функцией, которая выполняет поставленную задачу. Пример будет использовать сайт с новостями, поэтому, пожалуйста, замените URL на нужный вам.

import requests
from bs4 import BeautifulSoup

def parse_news(url):
    # Получаем HTML-код страницы
    response = requests.get(url)
    
    # Проверяем, успешно ли была выполнена GET-запрос
    if response.status_code == 200:
        # Создаем объект BeautifulSoup
        soup = BeautifulSoup(response.text, 'html.parser')
        
        # Находим все заголовки и текст статей (здесь пример с классами, у каждой страницы могут быть свои)
        articles = soup.find_all('article')  # Измените 'article' на нужный тег
        for article in articles:
            title = article.find('h2')  # Измените 'h2' на тег, соответствующий заголовку
            text = article.find('p')     # Измените 'p' на тег, содержащий текст статьи
            
            if title and text:
                print(f"Название статьи: {title.text.strip()}")
                print(f"Текст статьи: {text.text.strip()}\n")
    else:
        print(f"Ошибка при получении данных: {response.status_code}")

# Пример использования функции (укажите ваш URL)
parse_news('https://example.com/news')  # Замените на актуальный URL

Как работает этот код:

  1. Импорт библиотек: Сначала мы импортируем необходимые библиотеки requests и BeautifulSoup.
  2. Функция parse_news: Создаем функцию, которая принимает URL в качестве аргумента.
  3. Получение HTML: Используем requests.get() для получения HTML-кода страницы.
  4. Парсинг HTML: Если запрос успешен, создаём объект BeautifulSoup и ищем элементы статей.
  5. Извлечение заголовков и текста: Ищем заголовок и текст статьи внутри каждого элемента. Примерные теги h2 и p могут меняться в зависимости от структуры HTML страницы.
  6. Вывод информации: Печатаем названия и текст статей.

Не забудьте установить библиотеку BeautifulSoup, если она еще не установлена:

pip install beautifulsoup4
pip install requests

Если у вас возникнут вопросы о коде, его использовании или о том, как улучшить парсер, смело спрашивайте!