Автоматизация проверки контрагентов: как мы победили каптчу и защиту
Изменение законодательства РФ потребовало от группы компаний проверять всех новых контрагентов. Штатный юрист не справлялся с объёмом, а API-сервисы стоили дорого. Мы написали парсер на Selenium, который интегрировался с корпоративной системой и Telegram, и теперь проверка занимает минуты вместо часов. А сформированный PDF-отчёт с подписью юриста можно сразу сохранить в дело.
Закон меняет правила игры
В связи с новым законодательством РФ, которое предполагает ответственность за выбор контрагента, в группе компаний ввели регламент: проверка всех новых контрагентов по факторам риска. Раньше юрист проверял только крупные контракты по запросу начальства, теперь — каждый договор. Основные источники данных: checko.ru, rusprofile.ru, nalog.ru, list-org.com. Но ручная проверка каждого контрагента стала неподъёмной.
Оценив стоимость API (тысячи рублей в месяц) и список критериев, решили написать парсер для list-org.com — ресурса с богатой информацией, но серьёзной защитой от ботов (заголовки, каптча, ограничения скорости).
Как работает система
- Пользователь (менеджер) заполняет заявку на проверку в корпоративной системе.
- Telegram-бот уведомляет юриста о новом запросе.
- Юрист открывает раздел проверок, видит анкету и нажимает «Начать проверку».
- Парсер на Selenium запускается, вбивает ИНН в поиск на list-org.com, выбирает нужного контрагента (учитывая КПП филиалов).
- Собирает данные: наименование, ИНН, КПП, ОГРН, статус, учредители, руководитель, адрес и т.д.
- Раскладывает результаты в корпоративную систему и формирует отчёт.
- Юрист визирует отчёт, ставит статус «Рекомендован» или «Не рекомендован».
- Система автоматически генерирует PDF-отчёт с подписью юриста и сохраняет его в базе данных.
- Пользователь получает уведомление в Telegram о завершении проверки и ссылку на отчёт.
Парсер должен уметь
Техническая кухня
- Донор: list-org.com — мощная защита: заголовки, каптча, ограничение частоты запросов.
- Оружие: старый добрый Selenium с полной эмуляцией браузера (Chrome), случайными движениями мыши, паузами 5–15 секунд между действиями.
- Скорость: до 10 проверок в час — для задачи этого достаточно, не нужно платить за разгадывание каптчи.
- Хранение: данные складываются в SQL-базу корпоративной системы, связаны с заявками пользователей.
- Генерация PDF: после утверждения отчёта юристом система создаёт PDF-документ с логотипом компании, печатью и местом для подписи, сохраняет его в базе данных.
- Стек: Selenium, ChromeDriver, SQL, Redis для очередей, Telegram Bot API.
Результат
- Соответствие законодательству: все контрагенты проверяются по единому регламенту, риск штрафов сведён к минимуму.
- Экономия времени юриста: раньше одна проверка занимала до 30 минут, теперь — 2–3 минуты на визирование отчёта.
- Прозрачность и архивация: каждый отчёт сохраняется в PDF с подписью юриста, что обеспечивает доказательную базу при проверках.
- Интеграция с Telegram: юрист и пользователи получают мгновенные уведомления, не заходя в систему.
- Масштабируемость: парсер легко адаптировать под другие источники (rusprofile, checko) при необходимости.


