python

Проверяем сведения о недостоверности в выписках из ЕГРЮЛ, склеив их в pdf на python

  • суббота, 15 июня 2019 г. в 00:18:33
https://habr.com/ru/post/456060/
  • Python
  • PDF


В настоящее время весьма актуальной темой остается возможность налогового органа исключить из ЕГРЮЛ общество всего лишь ”выявив” в отношении компании так называемые недостоверные сведения. Как показывает статистика с сентября 2018 года ФНС исключила из ЕГРЮЛ 90 тысяч организаций с записью о недостоверности сведений о руководителе, учредителе или адресе юрлица. Обнаружить тот факт, что в отношении компании имеются недостоверные сведения можно лишь просмотрев выписку из ЕГРЮЛ.

Выглядит это примерно следующим образом:



Проблема усугубляется тем, что данные о недостоверности могут появиться как по заявлению заинтересованного лица так и “сами по себе”, в результате действий налогового органа. Чтобы обезопасить себя от внезапного вылета из ЕГРЮЛ выписки требуется получать регулярно. Как это делать быстро и безболезненно при наличии в холдинге большого количества компаний, мы разобрали в предыдущем посте.

В этот раз разберем как искать сведения о недостоверности в выписках ЕГРЮЛ.

Будем считать, что у нас имеется n-е количество выписок, которые мы скачали с сайта ФНС. Выписки имеют расширение .pdf и какие-то наименования.

Все, что от нас требуется это осуществить поиск по слову “недост” в каждом pdf файле.

Открывать каждый pdf файл с выпиской и производить поиск не наш метод. Это может занять избыточно много времени. Можно склеить все файлы в Abbyy Finereader, но это тоже займет достаточно времени.

Напишем программу, которая склеит все pdf файлы в один. Python позволяет это сделать за секунды!

В дальнейшем мы сможем открыть созданный файл и провести поиск по требуемому слову сразу по всем выпискам из ЕГРЮЛ.

Начнем.

*Выписки из ЕГРЮЛ у нас находятся в директории С:\1.
В новом файле python импортируем модули для работы с pdf и системой в целом:

import PyPDF2, os

Далее создаем пустой список и перемещаемся в директорию C:\1, в которой будут находиться все наши выписки.

Данная директория не обязательно должна быть пустая. В программе мы предусмотрели обработку только тех файлов, которые имеют расширение pdf:

pdfFiles = []
os.chdir('C:\\1')
for filename in os.listdir('.'):
    if filename.endswith('.pdf'):
        pdfFiles.append(filename)
pdfFiles.sort()

Следующий блок склеивает выписки между собой, добавляя каждую последующую выписку в конец:

pdfWriter = PyPDF2.PdfFileWriter()
# Loop through all the PDF files.
for filename in pdfFiles:
    pdfFileObj = open(filename, 'rb')
    pdfReader = PyPDF2.PdfFileReader(pdfFileObj)

    # Loop through all the pages and add them.
    for pageNum in range(0, pdfReader.numPages):
        pageObj = pdfReader.getPage(pageNum)
        pdfWriter.addPage(pageObj)

Осталось только сохранить результат:

pdfOutput = open('all.pdf', 'wb')
pdfWriter.write(pdfOutput)
pdfOutput.close()

Итак, после работы программы, мы получили файл all.pdf, по которому уже можно искать требуемую информацию о недостоверности сведений.

Скачать программу для склейки pdf в один – здесь.