Хабрахабр

[Из песочницы] Подача авто-запросов на сайте ФНС в ЕГРЮЛ на python

На сайте ФНС по адресу egrul.nalog.ru/index.html есть замечательный сервис проверки контрагентов или своих собственных обществ.

Суть проверки сводится к подаче запроса в ЕГРЮЛ (единый реестр фактов детальности юридических лиц) и получении тут же, онлайн, выписки из реестра.

Все, выписка получена. Работа с сервисом не вызывает каких-либо затруднений: внес в поле ОГРН, нажал кнопку “Найти” и нажал кнопку “Скачать” ниже.

Очень просто. Как здесь может помочь автоматизация?

Если ваш холдинг состоит из n-количества юридических лиц, то даже такая работа как копипастинг ОГРН в строку поиска сервиса может надоесть.

Избавимся от рутины и автоматизируем процесс подачи-скачивания выписок из ЕГРЮЛ!
В нашем случае программа будет “забирать” по одному ОГРН из заранее подготовленной таблицы excel, вносить значение в строку сервиса, нажимать необходимые кнопки.

В идеале работа программы будет выглядеть так:

Приступим.

Для начала подготовим таблицу excel, куда внесем ОГРН, по которым мы будем работать, в столбик:

Количество ОГРН не имеет значения (можно хоть весь ЕГРЮЛ скачать), главное чтобы они все были в столбце А.

Назовем файл выпискиЕГРЮЛ.xlsx и сохраним в рабочей директории python.

Теперь создадим сам файл с программой – egrul.py.

Первые строки программы, как обычно, начинаются с импорта необходимых модулей, далее мы выбираем браузер (в моем случае Chrome) и “заходим” на сайт:

Далее мы запускаем цикл по всем ОГРН в таблице excel:

Здесь надо обратить внимание на значения x вначале цикла:

Конечная ячейка будет A9, хотя в цикле указана цифра 10. 2- это начальная ячейка с ОГРН (стартовая), которая соответствует A2 в excel таблице.

Это может показаться недопустимо долго и этот период захочется сократить. Это надо иметь ввиду, чтобы все ОГРН были обработаны и последнее значение не потерялось.
Между подачами запросов в ЕГРЮЛ программа выдерживает паузу в 30 секунд. Однако в данном случае можно попасть под санкции сервиса ФНС и получить капчу. Это можно сделать, поменяв значение в строке time.sleep(30) на, например, time.sleep(10). А в этой программе лучше оставить задержку между подачами запросов в 30 секунд и пойти спокойно пить чай, пока программа за вас работает. Данную капчу можно обойти, но это тема отдельного поста.

Ссылка на программу – здесь.

Ссылка на тестовую таблицу excel – здесь.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть