Fullstack-разработчик (Symfony / Битрикс) с опытом DevOps.

Петр Сальников spbcod

Рейтинг: 30
Верифицирован через Сбер ID
Всего отзывов: 0
  • Работ в портфолио: 42
  • Типовых услуг: 11
  • Работ на продажу: 0
  • Возраст: 50 лет
  • Стаж работы: 27 лет
  • Зарегистрирован: 26.02.2023
  • Образование: Cпециалитет
  • Стоимость услуг (руб): 1 000 за час 200 000 за месяц
Был на сайте:

Разработка каталога спортивных организаций Санкт-Петербурга и Ленинградской области (234 вида спорта) с автоматическим сбором данных (ИИ-парсинг) на OpenCart

Описание

Заказчику требовался полный и структурированный каталог всех спортивных организаций Санкт-Петербурга и Ленинградской области: спортивные школы, секции, клубы, федерации, центры подготовки. Основная сложность — данные разрознены по тысячам сайтов, справочников и городских порталов, часто устаревшие или неполные. Необходимо было не просто разработать сайт, но и наполнить его актуальной информацией с привязкой к 234 видам спорта.

Решение

1. Проектирование структуры данных (Data Architecture)
Спроектировал реляционную базу данных, заточенную под хранение информации об организациях:
Основная таблица organizations: название, полное наименование (юр.), ИНН (опционально), контакты (телефон, email, сайт), описание, часы работы.

География: отдельные таблицы для адресов, районов, станций метро с привязкой к организации (у организации может быть несколько филиалов/адресов).

Виды спорта: связь многие-ко-многим (одна организация может обучать нескольким видам спорта, один вид спорта может быть в нескольких организациях).
Доп. атрибуты: наличие залов, бассейнов, условия для людей с ОВЗ и т.д.

2. Автоматизированный сбор и обогащение данных (ИИ + Парсинг)

Сбор данных: Разработал парсинг из множества источников:
Официальные сайты ДЮСШ и СШОР.
Городские порталы (спорткомитеты, администрации районов).
Справочники организаций (2ГИС, Яндекс.Карты, но с выгрузкой данных).
Сайты федераций по видам спорта.
Афиши соревнований (где организаторы — спортшколы).

Обработка с помощью ИИ:
Классификация: определял по тексту, что это именно спортивная организация (а не фитнес-клуб для взрослых или просто секция при школе).
Извлечение данных: ИИ вычленял из "сырого" текста название, адрес, телефон, сайт, виды спорта.
Нормализация названий: приводил названия к единому виду (например, "СШОР №2 по футболу" и "Спортивная школа олимпийского резерва №2 (футбол)" — идентифицировал как одну организацию).
Определение видов спорта: если вид спорта явно не указан, ИИ анализировал описание, новости, расписание и дообучался определять специализацию.

3. Обработка и очистка данных
Дедубликация: Написал алгоритмы поиска дублей по названию, адресу, телефону. Одна организация, найденная в 5 источниках, превращалась в одну запись в базе с объединенными контактами.
Валидация контактов: Проверка телефонов на актуальность (формат, код города), проверка сайтов на работоспособность.
Геопривязка: Автоматически определял район по адресу, привязывал к ближайшей станции метро.

4. Backend-разработка на OpenCart
Кастомная БД: Создал и интегрировал в OpenCart новые таблицы, не ломая ядро.
Кастомный контроллер: Создал отдельный контроллер catalog/organizations, который обрабатывал логику вывода списков и детальных страниц.

5. SEO и вывод

SEO-оптимизация:
Динамическая генерация meta-тегов (title, description) для каждой организации и каждой категории (вида спорта).
Создание Sitemap.xml со всеми страницами организаций и категорий.
Настройка robots.txt для правильной индексации новых разделов.

6. Frontend и UX

Вывод данных: Разработал шаблоны для:
Списка организаций с краткой информацией (название, адрес, виды спорта).
Детальной карточки организации (все контакты, схема проезда, список тренеров (опционально), отзывы).

Форма обратной связи: Интегрировал всплывающее окно (попап) с AJAX-формой для отправки сообщений в организацию прямо с сайта, без перезагрузки страницы.

Результат

Создан полноценный, автоматически наполняемый каталог спортивных организаций региона. Заказчик получил:

Базу из тысяч актуальных организаций с проверенными контактами.
Сайт с удобной навигацией и фильтрацией для посетителей.
Систему, которая не требует ручного обновления — данные парсятся и актуализируются автоматически.
Готовый продукт, который можно монетизировать (размещение, лидогенерация для спортивных школ).

Ссылки на примеры реализации

 vsporte24.ru/index.php?route=information/informati...

Презентация проекта

Скриншот 25-02-2026 010317.jpg
Скриншот 25-02-2026 010342.jpg
Скриншот 25-02-2026 010354.jpg

Оценили проект:

0