Vérifiez les informations sur le manque de fiabilité dans les extraits du registre. Colle pdf en python

Actuellement, la possibilité pour l'administration fiscale d'exclure une entreprise du registre d'État unifié des entités juridiques ne fait que «révéler» les informations dites inexactes concernant l'entreprise reste un sujet très urgent. Comme le montrent les statistiques, à partir de septembre 2018, le Service fédéral des impôts a exclu 90000 organisations du Registre d'État unifié des entités juridiques avec un enregistrement de l'inexactitude des informations sur le chef, le fondateur ou l'adresse de l'entité juridique. Pour découvrir le fait qu'il existe des informations inexactes concernant la société ne peut être consultée que par extraction du registre.

Cela ressemble à ceci:



Le problème est aggravé par le fait que des données sur l'inexactitude peuvent apparaître à la fois à la demande de la personne intéressée et «de leur propre chef», à la suite des actions de l'administration fiscale. Pour vous protéger d'un départ brusque du registre, des extraits doivent être reçus régulièrement. Comment procéder rapidement et sans douleur s'il y a un grand nombre de sociétés dans l'exploitation, nous avons examiné dans un post précédent.

Cette fois, nous analyserons comment rechercher des informations sur le manque de fiabilité dans les extraits du registre des personnes morales.

Nous supposons que nous avons le nième nombre de déclarations que nous avons téléchargées à partir du site Web de FTS. Les instructions ont l'extension .pdf et certains noms.

Il nous suffit de rechercher le mot «manque» dans chaque fichier pdf.

L'ouverture de chaque pdf avec une déclaration et la recherche n'est pas notre méthode. Cela peut prendre un temps excessivement long. Vous pouvez coller tous les fichiers dans Abbyy Finereader, mais cela prendra également assez de temps.

Nous allons écrire un programme qui collera tous les fichiers pdf en un seul. Python vous permet de le faire en quelques secondes!

À l'avenir, nous pourrons ouvrir le fichier créé et effectuer une recherche du mot souhaité immédiatement sur tous les extraits du registre.

Commençons.

* Les instructions de l'USRLE se trouvent dans le répertoire C: \ 1.
Dans le nouveau fichier python, nous importons des modules pour travailler avec pdf et le système dans son ensemble:

import PyPDF2, os 

Ensuite, créez une liste vide et déplacez-vous vers le répertoire C: \ 1, dans lequel toutes nos instructions seront situées.

Ce répertoire ne doit pas être vide. Dans le programme, nous avons prévu de traiter uniquement les fichiers qui ont l'extension pdf:

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

Le bloc suivant colle les instructions les unes aux autres, en ajoutant chaque instruction suivante à la fin:

 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) 

Il ne reste plus qu'à enregistrer le résultat:

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

Ainsi, après le travail du programme, nous avons reçu le fichier all.pdf, par lequel il est déjà possible de rechercher les informations requises sur l'inexactitude des informations.

Téléchargez le programme de collage de pdf en un - ici .

Suite à partir du 11/08/2019


Nous coupons les relevés du registre, en gardant les 4 premières pages de chaque relevé.
Informations sur le manque de fiabilité du jur. personne tombe dans différentes parties du registre.
À la fin de l'extrait contient des enregistrements de manque de fiabilité, qui ont été annulés par la taxe.
Ainsi, il n'est guère conseillé d'exécuter le programme pour des extraits entiers du Registre d'État unifié des entités juridiques: le programme trouvera également ces entrées obsolètes.
Par conséquent, nous utiliserons pyhton pour couper les instructions téléchargées de l'USRLE, en enregistrant les 4 premières pages de chacune. En règle générale, ces pages suffisent à trouver des signes d'inexactitude dans l'adresse ou dans le seul organe exécutif.
Déplacez tous les extraits que vous avez téléchargés précédemment (fichiers pdf) dans le dossier conditionnel le long du chemin 'C: \ 1 \ 2' et exécutez le code python:
 #! python3 import PyPDF2, os from datetime import datetime start = datetime.now() os.chdir('C:\\1\\2') pdfFiles = [] 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, 4): pageObj = pdfReader.getPage(pageNum) pdfWriter.addPage(pageObj) # Save the resulting PDF to a file. pdfOutput = open('all-small.pdf', 'wb') pdfWriter.write(pdfOutput) pdfOutput.close() print(datetime.now()- start) 

À la sortie, nous recevrons les relevés de registre collés dans un seul fichier pdf - «all-small.pdf». De plus, à partir de chaque déclaration ne seront que les 4 premières pages.

Maintenant, exécutons "all-small.pdf" en recherchant l'expression "défauts":
 #!/usr/bin/python import fitz,os filename = "all-small.pdf" search_term = "" pdf_document = fitz.open(filename) for current_page in range(len(pdf_document)): page = pdf_document.loadPage(current_page) if page.searchFor(search_term): print("%s    %i" % (search_term, current_page+1)) 


Le programme fonctionne beaucoup plus rapidement que la recherche dans un seul fichier pdf collé via le «lecteur Acrobat» et affiche en même temps les pages sur lesquelles l'incertitude a été trouvée dans le terminal.

Source: https://habr.com/ru/post/fr456060/


All Articles