Парсер отзывов карточки товара Wildberries на базе TG-бота
ТЗ на разработку парсера отзывов карточки товара Wildberries с использованием Telegram-бота 1. Общее описание проекта Разработать Telegram-бота, который получает на вход артикул товара или ссылку на товар с Wildberries, осуществляет парсинг отзывов по указанному товару и выгружает результаты в виде Excel-таблицы. Таблица должна содержать следующую информацию: дата отзыва, количество звезд, текст отзыва, цвет и размер товара, имя пользователя. 2. Требования к функционалу 2.1. Input данные Артикул товара — уникальный числовой идентификатор товара на Wildberries.Ссылка на товар — полноценная URL-ссылка на страницу товара на Wildberries. 2.2. Output данные Бот должен выгружать отзывы в Excel-таблицу, которая будет содержать следующие столбцы:Дата — дата публикации отзыва.Количество звезд — оценка товара от 1 до 5.Текст отзыва — содержимое отзыва.Цвет — цвет товара, который указал покупатель.Размер — размер товара, который выбрал покупатель.Имя — имя пользователя, который оставил отзыв. 2.3. Взаимодействие через Telegram Пользователь отправляет артикул или ссылку на товар через Telegram-бота.Бот выполняет валидацию:Проверяет корректность артикула (только числовой формат).Проверяет корректность URL (должен соответствовать формату ссылки Wildberries).После успешной валидации бот парсит отзывы с Wildberries.По завершении парсинга бот отправляет пользователю Excel-файл с выгруженными отзывами. 3. Требования к парсингу 3.1. Объект для парсинга Отзывы товара на Wildberries. Парсер должен поддерживать извлечение:Всех отзывов по товару, независимо от их количества.Данных о цвете и размере товара, выбранных покупателем, при наличии. 3.2. Особенности парсинга Учесть динамическую загрузку отзывов (использование AJAX или других методов для подгрузки дополнительных отзывов).Использовать пагинацию для сбора всех отзывов, если они разбиты на страницы. 3.3. Частота запросов Необходимо предусмотреть соблюдение лимитов запросов к серверу Wildberries (например, с помощью выставления задержек между запросами).Обеспечить возможность обработки ошибок (например, при временной блокировке IP или отсутствии отзывов для товара). 4. Требования к структуре Telegram-бота 4.1. Команды для взаимодействия с ботом /start — приветственное сообщение с инструкцией./help — справка по возможностям бота и форматам ввода.Ввод ссылки или артикула — бот должен корректно распознавать либо ссылку, либо артикул, полученные в одном сообщении. 4.2. Ответы бота При успешной валидации данных — сообщение о начале парсинга.При ошибке валидации — сообщение с указанием причины ошибки (например, неверный формат артикула или некорректная ссылка).По завершении работы — отправка файла с отзывами. 5. Требования к формату Excel-таблицы Файл должен иметь формат .xlsx.В таблице должны быть следующие столбцы:Дата публикации.Количество звезд.Текст отзыва.Цвет товара.Размер товара.Имя пользователя.Таблица должна содержать все отзывы по указанному товару, начиная с самых новых. 6. Технические требования 6.1. Язык программирования Python. 6.2. Используемые библиотеки и технологии Для работы с Telegram API: python-telegram-bot, telebot или аналогичные.Для парсинга данных: BeautifulSoup, Selenium, requests, или другие подходящие библиотеки для обработки динамических страниц.Для создания Excel-файла: openpyxl или pandas.Для обработки ссылок и артикула: валидация регулярными выражениями. 6.3. Инфраструктура Бот должен быть развернут на сервере с постоянным подключением к интернету.Предусмотреть возможность использования прокси-серверов для обхода блокировок. 7. Обработка ошибок Реализовать обработку возможных ошибок, таких как:Недоступность страницы товара.Неверный формат ссылки или артикула.Ошибки на сервере Wildberries (например, при временной недоступности ресурса).Отсутствие отзывов для товара.В случае ошибки бот должен информировать пользователя о её причине и предложить повторить попытку. 8. Тестирование и валидация Провести тестирование с несколькими товарами для оценки корректности работы парсера.Проверить корректность выгрузки Excel-таблиц с различным количеством отзывов (от нескольких до сотен/тысяч). 9. Сроки разработки Разработка парсера и базового функционала бота: 10 рабочих дней.Тестирование и исправление ошибок: 5 рабочих дней. 10. Контактная информация Для получения дополнительных данных или уточнения деталей, свяжитесь с заказчиком через следующие каналы:Telegram: shamil_bahteevТелефон: 89874208097
Bots