actuellement, si je fais un objet page d'une page pdf avec pypdf et extractText(), ce qui se passe est que les lignes sont enchaînées ensemble. Par exemple, si la ligne 1 de la page indique «bonjour» et la ligne 2 indique «monde», le texte résultant de extractText() est «helloworld» au lieu de «hello world». Est-ce que quelqu'un sait comment résoudre ceci, ou a des suggestions pour un travail autour? J'ai vraiment besoin du texte pour avoir des espaces entre les lignes parce que je suis en train de faire du texte sur ce texte pdf et ne pas avoir d'espaces entre les lignes le tue ....python et pypdf - comment extraire le texte des pages afin qu'il y ait des espaces entre les lignes
python et pypdf - comment extraire le texte des pages afin qu'il y ait des espaces entre les lignes
Répondre
Ceci est un problème commun avec l'analyse de pdf. Vous pouvez également vous attendre à des tirets de fin que vous devrez corriger dans certains cas. Je suis venu avec une solution de contournement pour un de mes projets que je vais décrire ici:
J'ai utilisé pdfminer pour extraire XML à partir de PDF et j'ai également trouvé des mots concaténés dans le XML. Je tirai le même PDF en HTML et le code HTML peut être décrit par des lignes de l'expression rationnelle suivante:
<span style="position:absolute; writing-mode:lr-tb; left:[0-9]+px; top:([0-9]+)px; font-size:[0-9]+px;">([^<]*)</span>
Les travées sont en position absolue et ont un style haut que vous pouvez utiliser pour déterminer si un saut de ligne est arrivé. Si un saut de ligne s'est produit et que le dernier mot de la dernière ligne n'a pas de tiret, vous pouvez séparer le dernier mot de la dernière ligne et le premier mot de la ligne en cours. Il peut être difficile dans les détails, mais vous pourriez être en mesure de corriger presque toutes les erreurs d'analyse de texte. En outre, vous pouvez exécuter une bibliothèque de dictionnaire comme enchant sur votre texte, trouver des erreurs et si la solution suggérée par le dictionnaire est comme le mot d'erreur mais avec un espace quelque part, le mot d'erreur est susceptible d'être une erreur d'analyse et peut être corrigé avec la suggestion de dictionnaires.
PDF Parsing suce et si vous trouvez une meilleure source, utilisez-le.
- 1. outil python pypdf
- 2. imprimé python et des espaces
- 3. Affichage des lignes et des espaces blancs suivants dans HAML
- 4. C# Lire le fichier et extraire des lignes spécifiques
- 5. Python pour extraire des données d'un fichier
- 6. Bash ou Python pour extraire des blocs de fichiers texte
- 7. VBS ajouter des lignes au fichier texte sans espaces
- 8. Vimdiff - Comment extraire des lignes similaires dans les fichiers et les sortir dans un fichier
- 9. regex pour extraire les noms et les valeurs des attributs
- 10. Disposer divs de sorte qu'il y ait une marge entre
- 11. Séparer le texte par des espaces blancs
- 12. Une bibliothèque Java pour l'extraction de texte à partir de documents PDF préservant des espaces et des lignes vides
- 13. Passer des données entre les pages asp.net
- 14. PHP passer des messages entre les pages
- 15. Capture du texte, y compris des sauts de ligne, des espaces de DOM dans jQuery?
- 16. Regexp pour extraire des données entre parenthèses et des virgules
- 17. comment créer des onglets de commutation entre les pages
- 18. comment supprimer des espaces dans et du champ de texte
- 19. Extraire des données entre les chaînes ou les balises
- 20. Comment extraire des données de xml et les décomposer en pages (pagination)
- 21. Remplir les espaces disponibles entre les étiquettes avec des points ou des tirets
- 22. Comment puis-je extraire des paragaphs et des lignes sélectionnées avec Perl?
- 23. Comment envoyer des valeurs entre les pages en utilisant javascript?
- 24. échanger des données SQL Server entre les lignes des problèmes
- 25. Suppression des lignes de fin de fichier RapidXML et des espaces dans la sortie
- 26. Comment transmettre des données avec '&' entre les pages Web
- 27. commande sed pour obtenir nième valeur séparée de tabulation entre les lignes x et y
- 28. VBA pour extraire des informations des zones de texte et les insérer dans la table
- 29. supprimer des lignes multiples dans le texte
- 30. Parse Texte rang avec des espaces vides
Vous pouvez jeter un oeil à cette SO page: http://stackoverflow.com/questions/25665/python-module-for-converting-pdf-to-text Il y a quelques bonnes suggestions là-bas! – avelldiroll