IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Besoin de parser un pdf venant d'un formulaire (pas de gestion de tables)


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut Besoin de parser un pdf venant d'un formulaire (pas de gestion de tables)
    Bonsoir

    Je ne parviens pas à trouve un module python (3.7) qui permet de parser un document pdf provenant d'un formulaire.

    Je ne peux pas, pour des raisons de confidentialité poster le pdf, mais il faut imaginer comme une page HTML avec des cases ayant à chaque fois un titre et des valeurs.
    Exemple : une case avec une titre "Entreprise" qui contient adresse : 12 Rue Victor Hugo, Tel : xxxxxx, puis une case avec un autre titre "Facture" et plein de sous champs.
    Il ne s'agit pas de tables.

    J'ai testé de nombreux modules: pdfminer, PyPDF2, voir des modules exotiques... Ils ne remontent qu'une chaîne de caractères sans prendre en compte l'aspect hiérarchique. Chaîne contenant des délimiteurs qui sont des "\n". Bref, si dans une case il y a des "\n" pour un champs (exemple adresse sur plusieurs lignes), c'est le chaos.

    Voici un exemple de mes recherches :
    https://stackoverflow.com/questions/...to-text-python

    -> Bref, PyPDF2 retourne une chaîne (par page), je recherche un module qui retourne un dictionnaire ou une liste.


    Belle soirée

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Il y a longtemps j'avais utilisé pdfminer pour lire un document "structuré": des informations dans des boîtes (bbox). Les boites qui contiennent du texte sont des LTTextBox ou des LTTextLine... et ces bbox sont des rectangles qui ont position, hauteur, largeur dans la page qui permette de savoir quoi regrouper.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Il y a longtemps j'avais utilisé pdfminer pour lire un document "structuré": des informations dans des boîtes (bbox). Les boites qui contiennent du texte sont des LTTextBox ou des LTTextLine... et ces bbox sont des rectangles qui ont position, hauteur, largeur dans la page qui permette de savoir quoi regrouper.

    - W
    Oui, j'ai vu cela, cela me parait compliqué de paramétrer les hauteurs et largeurs.

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Citation Envoyé par Bayard Voir le message
    Oui, j'ai vu cela, cela me parait compliqué de paramétrer les hauteurs et largeurs.
    Pas besoin de les paramétrer, on génère le document en mémoire et on va pouvoir récupérer des informations "physiques" dedans.
    Le design de tout ça est documenté ici : https://pdfminer-docs.readthedocs.io/programming.html

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 219
    Par défaut
    Hello,
    en pièce jointe un exemple de formulaire PDF remplie. Est-ce que c'est sur ce type de formulaire que tu veux récupérer des informations.

    Nom : formulairePDF.png
Affichages : 513
Taille : 217,5 Ko


    Ami calmant, J.P
    Images attachées Images attachées

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Salut,
    Citation Envoyé par jurassic pork Voir le message
    en pièce jointe un exemple de formulaire PDF remplie. Est-ce que c'est sur ce type de formulaire que tu veux récupérer des informations.
    Le pauvre Jurassic Pork, il a eu un accident de travail... Mais il travaille encore alors qu'il a bientôt 120 ans ??? Trop fort...

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonsoir !

    Tu as essayé ce genre de chose :
    Extraire une table : https://www.thepythoncode.com/articl...python-camelot
    PyPDF2 et formulaire : https://towardsdatascience.com/how-t...n-10b5e5f26f70
    Version barbare (OCR de Google) : https://codelabs.developers.google.c...er-v1-python#0

    Je suppose que tu as déjà vu ces sites auparavant ce sont les premiers que me propose Google.

  8. #8
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Citation Envoyé par LeNarvalo Voir le message
    Bonsoir !

    Tu as essayé ce genre de chose :
    Extraire une table : https://www.thepythoncode.com/articl...python-camelot
    PyPDF2 et formulaire : https://towardsdatascience.com/how-t...n-10b5e5f26f70
    Version barbare (OCR de Google) : https://codelabs.developers.google.c...er-v1-python#0

    Je suppose que tu as déjà vu ces sites auparavant ce sont les premiers que me propose Google.
    -> J'ai testé. visiblement mon document ne contient aucune page.

    -> Cela peut me remonter une chaîne de caractère (voir on post originel) avec le mode acroform

    Version barbare (OCR de Google) : https://codelabs.developers.google.c...er-v1-python#0
    Heu, j'avoue que le terme AI me rebute.

  9. #9
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 657
    Par défaut
    Bonjour,

    est-ce que tu ne gagnerais pas à préalablement convertir le pdf dans un format qui pourra être parcouru plus facilement ?
    si j'ai bien compris il s'agit de tableaux, donc
    pdf (-> txt) -> csv
    ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  10. #10
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    Bonjour,

    est-ce que tu ne gagnerais pas à préalablement convertir le pdf dans un format qui pourra être parcouru plus facilement ?
    si j'ai bien compris il s'agit de tableaux, donc
    pdf (-> txt) -> csv
    ?
    si j'ai bien compris il s'agit de tableaux,
    Il ne s'agit pas de tableaux mais de formulaires.

  11. #11
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 657
    Par défaut
    une page HTML avec des cases ayant à chaque fois un titre et des valeurs
    je voyais ça comme une <table> (un "tableau").
    Il ne s'agit pas de tableaux mais de formulaires.
    je n'ai rien dit alors.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. API C/C++ pour parser des PDF
    Par TheGzD dans le forum C++
    Réponses: 6
    Dernier message: 20/07/2011, 21h23
  2. [PHP 5.2] PDF venant d'un webservice
    Par madevilts dans le forum Langage
    Réponses: 2
    Dernier message: 16/05/2011, 15h59
  3. Réponses: 0
    Dernier message: 05/11/2009, 18h12
  4. besoin aide - parser HTML - BeautifulSoup
    Par romses2 dans le forum Réseau/Web
    Réponses: 2
    Dernier message: 20/07/2007, 14h42
  5. Parser XML -> PDF
    Par ebaynaud dans le forum Modules
    Réponses: 2
    Dernier message: 12/10/2004, 14h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo