Портфолио и кейсы фрилансеров по парсингу данных

Федор Антонов
Федор Антонов 20 дней 11 часов назад
Парсинг Ozon: 100 сапбордов, цены и 1 152 характеристики
Учебно-практический портфельный кейс на данных публичного каталога Ozon. Задача: собрать первые 100 уникальных карточек категории «Сап борд надувной» для Москвы, привести данные к единой структуре и подготовить понятный заказчику Excel. Собрано: название, артикул, бренд, продавец, текущая и старая цена, скидка, рейтинг, отзывы, вопросы, наличие, доставка, склад, ссылка, изображение и технические параметры товара. Результат: 100 из 100 карточек обработаны; 100 уникальных артикулов; 1 152 характеристики; 32 бренда; 35 продавцов; ошибок и пропусков обязательных полей — 0. Диапазон цен на момент сбора: 7 848–40 944 ₽. Подготовлен русский Excel из шести листов: сводка, товары, характеристики, аналитика, QA и методика. Добавлены формулы, диаграммы, проверка дублей и полноты. Учтена штатная браузерная проверка Ozon; CAPTCHA не обходилась. Это снимок выдачи на 30.08.2026 — цены, наличие, доставка и порядок товаров могут изменяться. Кейс не означает сотрудничество или аффилированность с Ozon.
Федор Антонов
Федор Антонов 20 дней 20 часов назад
Частичный парсинг каталога: 143 товара, скидки, рейтинги и HTTP 429
Учебный портфельный кейс по частичному сбору каталога по техническому заданию заказчика. Задача: не выгружать весь сайт, а отобрать четыре нужные категории, собрать товарные данные, рассчитать аналитику и корректно обработать ограничение частоты запросов. Что сделано: • безопасно проверено 500 товарных страниц; • отобрано 143 товара из четырёх категорий; • электроника — 44, офисные товары — 36, спорт — 34, дом и сад — 29; • собраны SKU, названия, бренды, цены, старые цены, наличие, рейтинги, отзывы, описания, теги, варианты, ссылки и изображения; • рассчитаны размер скидки и аналитические показатели; • 117 товаров находились в наличии, 56 продавались со скидкой; • средний рейтинг выборки — 4,02; • подготовлены отдельные листы по категориям, поставщикам, лучшим скидкам, рейтингам и отсутствующим товарам; • проведён QA: 0 пропусков обязательных полей, 0 дублей SKU и URL, 0 неожиданных категорий. Отдельно выполнен разрешённый тест HTTP 429: • контролируемая серия из 12 запросов; • 10 ответов HTTP 200 и 2 ответа HTTP 429; • прочитан серверный Retry-After; • после ожидания работа восстановилась с HTTP 200. Это демонстрация корректной обработки ограничения: без обхода защиты, подмены личности или чрезмерной нагрузки. Итог: готовый русскоязычный Excel для анализа ассортимента, цен, скидок, наличия, рейтингов и поставщиков. Стек: Python, HTML/JSON, Excel, парсинг, QA, обработка HTTP 429 и повторных запросов.
Федор Антонов
Федор Антонов 20 дней 20 часов назад
Porta di Parma: парсинг каталога и подготовка 293 товаров для 1С
Портфельный кейс по сбору и подготовке каталога реального российского производителя дверной фурнитуры. Задача: получить полный перечень товаров с официального сайта, структурировать характеристики, проверить качество данных и подготовить безопасную таблицу для последующего сопоставления со справочниками 1С. Что сделано: • по официальной карте сайта обнаружено 317 товарных URL; • обработаны 16 товарных категорий; • полностью разобраны 293 карточки; • для 24 страниц с HTTP 500 сохранены URL и частично восстановленные данные; • собраны артикулы, названия, категории, модели, цвета, материалы, размеры, вес, гарантия, штрихкоды, изображения и описания; • исправлен один конфликт артикула по официальному URL; • выявлены 18 сомнительных значений веса — они не перенесены в импорт без подтверждения; • подготовлено 293 записи для сопоставления с номенклатурой 1С; • создан отдельный журнал из 43 исключений и принятых решений; • выполнены проверки обязательных полей, URL и дублей. Итоговый Excel содержит дашборд, master-каталог, лист «Готово к 1С», журнал исключений, категории и контроль качества. Важно: это не прямая загрузка в конкретную базу 1С. Поля подготовлены для импорта, но ставки НДС, группы номенклатуры и окончательное соответствие справочникам должен подтвердить заказчик. Стек: Python, HTML-парсинг, восстановление данных, Excel, подготовка импорта 1С, QA.
Федор Антонов
Федор Антонов 20 дней 20 часов назад
MarkoPool: парсинг полного каталога 4 067 товаров и контроль качества
Портфельный кейс по сбору полного каталога крупного интернет-магазина оборудования для бассейнов. Задача: найти все товарные карточки, доказать полноту каталога, восстановить пропущенные URL, собрать структурированные данные и подготовить проверяемый Excel. Что сделано: • исследованы 25 категорий, пагинация, фильтры, сортировки и дополнительные tag-выдачи; • базовый crawler собрал 4 056 URL; • recovery восстановил 11 пропущенных карточек; • итоговый master-list — 4 067 уникальных товаров; • parser обработал 4 067 из 4 067 карточек без ошибок; • собрано 38 978 характеристик; • выполнены дедупликация, контроль URL, кодов и обязательных полей; • повторный Targeted Recovery не нашёл новых позиций, что подтвердило стабильность результата. Итоговый Excel содержит обзор проекта, полный каталог, категории, характеристики, контроль полей и QA. Качество данных: • названия, наличие и изображения — 100%; • коды — 99,43%; • цены — 98,80%; • производители — 98,03%; • страны — 98,94%; • описания — 94,74%; • пропущенных URL, ошибок parser и дублей кодов — 0. Пустые значения соответствуют отсутствию данных на исходном сайте и не заполнялись искусственно. Стек: Python, HTTP/HTML-парсинг, восстановление URL, JSON, Excel, QA данных.
Федор Антонов
Федор Антонов 21 день 17 часов назад
Парсинг «Пятёрочки»: магазины, ассортимент и сравнение цен
Портфельный пилот реального задания на FL.ru: сбор адресов и режимов работы магазинов, каталогов и магазинных предложений. Что сделано: • собран и проверен реестр 223 физических магазинов Тулы и Твери; • заполнены координаты и часы работы 222 действующих точек; • физические магазины отделены от магазинов комплектации доставки; • найдены и исследованы 29 уникальных SAP-магазинов доставки — 17 в Туле и 12 в Твери; • для каждого магазина выгружена вся доступная категория «Сгущёнка»; • получено 288 предложений по 13 уникальным товарам; • построено сравнение полного ассортимента и цен для 3 магазинов Тулы и 3 магазинов Твери; • выполнены дедупликация, контроль обязательных полей и формульный QA без ошибок. Результат: аналитический Excel с реестром физических точек, магазинами доставки, исходными предложениями, матрицей цен и листом контроля качества. Техническая особенность: прямые запросы ограничивались ServicePipe. Сбор выполнялся через обычную браузерную сессию небольшими возобновляемыми партиями после пользовательской антибот-проверки. Qrator на этом контуре не подтверждён. Стек: Python, JavaScript, браузерная автоматизация, JSON, Excel, QA данных.
Андрей Голощапов
Андрей Голощапов 22 дня 7 часов назад
Сервис поиска и приоритизации B2B-лидов через 2GIS API (Python)
ЗАДАЧА: автоматизировать поиск потенциальных клиентов для b2b-клининга (бизнес-центры, ТЦ, ЖК, склады) вместо ручного обхода карт. РЕШЕНИЕ: пайплайн из 4 модулей на Python: — поиск объектов через Places API 2ГИС по заданному городу; — нормализация сырых данных: удаление дублей и пустых записей; — скоринг по прозрачным правилам (тип объекта + наличие контактов); — итоговый приоритетный CSV-список для холодных контактов. РЕЗУЛЬТАТ: рабочий MVP, проверен на реальных данных — 177 объектов Краснодара за один запуск. Менеджер получает готовый ранжированный список вместо ручного поиска. ТЕХНОЛОГИИ: Python, 2GIS Places API, CSV, dotenv. Безопасность: ключи в .env, не коммитятся.
Дмитрий Гребенкин
Дмитрий Гребенкин 23 дня 15 часов назад
Распределённый парсер Avito
Для регулярного сбора объявлений Avito был нужен устойчивый контур, который не блокирует API на время обхода страниц и позволяет независимо масштабировать исполнителей. Я реализовал FastAPI-сервис постановки задач, очередь Celery через Redis и пул Selenium workers. Задание получает параметры поиска, попадает в очередь, назначается свободному исполнителю, использует доступный proxy и после завершения сохраняет результат, доступный по идентификатору задачи. Для эксплуатации добавлены health-проверки API, Redis и workers, а Flower показывает очереди, активные процессы и состояние кластера. В портфолио использованы реальные экраны Swagger, health endpoint и Flower, дополненные схемой фактического движения задания. Моя роль: архитектура распределённого решения, API, фоновые задачи, управление proxy pool, контейнеризация и наблюдаемость. Такой подход отделяет приём запросов от тяжёлого браузерного сбора и упрощает горизонтальное масштабирование.
Денис Афанасьев
Денис Афанасьев 24 дня 17 часов назад
Парсинг сайтов: поиск и сбор данных в Excel
Выполнен поиск и сбор информации с сайтов с последующей структуризацией данных в Excel. В рамках работы выполнялся поиск сайтов организаций по заданной тематике и региону, сбор контактных данных и проверка сайтов по дополнительным критериям. Собранные данные включают ссылки на сайты, телефоны, страницы-источники контактов и результаты проверки заданных параметров. При обработке выполняется фильтрация нерелевантных ресурсов, каталогов, агрегаторов и сторонних контактных данных. Результат предоставляется в структурированной таблице Excel. Подобный подход можно адаптировать под разные задачи заказчика: поиск компаний, сайтов, контактов, услуг, цен, характеристик и другой общедоступной информации.
Денис Афанасьев
Денис Афанасьев 1 месяц назад
Отчёт и визуализация данных в Excel
Создание аналитического отчёта на основе исходных данных о продажах. В работе выполнено: • подготовка и структурирование данных; • создание сводного отчёта; • расчёт ключевых показателей; • визуализация данных с помощью диаграмм; • подготовка удобного формата для анализа. Результат — Excel-файл с понятной структурой, который позволяет быстро оценивать основные показатели и принимать решения на основе данных.
Денис Афанасьев
Денис Афанасьев 1 месяц назад
Очистка и структурирование данных в Excel
Очистка и структурирование исходных данных в Excel. Демонстрационный пример обработки таблицы с клиентскими данными. В рамках работы выполнены: проверка исходной таблицы на наличие ошибок и повторяющихся записей; удаление дубликатов; приведение данных к единому формату; исправление структуры таблицы для удобной дальнейшей работы; обработка пропущенных значений; подготовка итогового файла Excel. Результат — аккуратная структурированная таблица, готовая для использования в работе, анализа или загрузки в другие системы. При выполнении подобных задач сначала изучаю исходные данные и требования, после чего подбираю оптимальный способ обработки.