Python:Примеры/Парсинг изображений с сайта

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Проверка/Оформление/Редактирование: Мякишев Е.А.


Парсинг изображений с сайта

Пример парсинга изображений с страницы https://www.retrohandheldgames.com/bandai/black-rx-3235. Картинки сохраняются в папке images на компьютере.

Код

import os
import requests
from bs4 import BeautifulSoup

# URL страницы, на которой нужно найти изображения в классе "carousel-item"
url = 'https://www.retrohandheldgames.com/bandai/black-rx-3235'

# Создаем директорию для сохранения изображений
if not os.path.exists('images'):
    os.makedirs('images')

# Отправляем GET-запрос на страницу
response = requests.get(url)

# Получаем HTML-код страницы
html = response.content

# Создаем объект BeautifulSoup для парсинга HTML
soup = BeautifulSoup(html, 'html.parser')

# Находим все элементы с классом "carousel-item"
carousel_items = soup.find_all(class_='carousel-item')

# Проходим по каждому элементу карусели
for item in carousel_items:
    # Находим все изображения в текущем элементе карусели
    images = item.find_all('img')
    
    # Проходим по каждому изображению
    for image in images:
        # Получаем URL-адрес изображения
        image_url = image['src']
        
        # Формируем имя файла для сохранения
        filename = os.path.join('images', os.path.basename(image_url))
        
        # Отправляем GET-запрос на URL изображения и сохраняем файл
        with open(filename, 'wb') as f:
            response = requests.get(image_url)
            f.write(response.content)

            # Выводим сообщение о сохранении файла
            print(f"Файл {filename} успешно сохранен")

См.также

Внешние ссылки