1. Des produits
  2.   PDF
  3.   Python
  4.   PyMuPDF
 
  

Genre PDF Dossiers, texte d'extrait Images par la Bibliothèque de Python libre

Le Python API libre permet d'éditer et de rendre PDF fichiers, d'extraire des textes et des images, d'éditer PDF pages, de fusion/plit convertir PDFs avec facilité.

PyMuPDF est une source ouverte légère Python API qui ajoute les liants Python et l'abstraction au format PDF. Les API sont de petite taille, mais très rapides et offrent des supports de documents populaires dont PDF XPS, OpenXPS, CB, PUB et FB2 (eBooks) formats d'images populaires. Le PyMuPD est très fiable et est connu pour sa capacité de production supérieure. Comme la bibliothèque est un poids très léger, c'est un grand choix pour les plates-formes où les ressources sont habituellement limitées, comme les téléphones intelligents.

L'extrait de référence, l'accès et la visualisation des métadonnées, en utilisant des esquisses et en supprimant la page PDFG Le PyMuPDF a inclus le soutien de nombreuses plateformes, comme Mac, Linux et Windows.

Previous Next

Pour commencer avec PyMuPDF

PyMuPDF peut être installé à l'aide de tuyauteries, les commandes suivantes seront installées à partir d'une roue Python si l'une est disponible pour votre plate-forme.

Installer PyMuPDF par canalisation

 python -m pip install --upgrade pip
python -m pip install --upgrade pymupdf
 

Clone PyMuPDF via la déclaration de git

 git clone https://github.com/pymupdf/PyMuPDF.git 

Il est également possible de l'installer manuellement ; téléchargez les derniers fichiers de version directement depuis le référentiel GitHub.

Recherche de texte dans PDF fichiers via Python

PDF a été l’un des formats de fichiers préférés du monde pour partager les documents sur Internet parce qu’il conserve tout le format de texte et les graphiques. Mais il n'est pas facile de chercher du texte dans ces fichiers par rapport à d'autres documents. La bibliothèque PyMuPDF gratuite permet aux concepteurs de logiciels d'ajouter des capacités de synthèse dans leurs applications Python. Il permet de déterminer où existe une chaîne de texte sur la page.

Recherche Où en est le texte de PDF pages Vigules par Python

areas = page.search_for("mupdf") 

Extraction de PDF textes et images par Python API

La bibliothèque de la source ouverte VousPDF a inclus plusieurs éléments importants pour travailler avec PDF textes et images. La bibliothèque a fourni diverses fonctions pour extraire le texte et des images de PDF documents. Par défaut, elle permet l'extraction de texte simple avec des pauses de ligne. Pas de formatage, pas de détails de position de texte, pas d'images. De plus, elle appuie la création d'une liste de blocs de texte, la création d'une liste de mots, la création d'une version visuelle complète de la page, y compris les images et beaucoup plus.

Comment extraire le texte de PDF par Python API

from operator import itemgetter
from itertools import groupby
import fitz
doc = fitz.open( 'mydocument.pdf' )
pages = [ doc[ i ] for i in range( doc.pageCount ) ]
for page in pages:
  text_words = page.getTextWords()
  # The words should be ordered by y1 and x0
  sorted_words = SortedCollection( key = itemgetter( 3, 0 ) )
  for word in text_words:
    sorted_words.insert( word )
  # At this point you already have an ordered list. If you need to 
  # group the content by lines, use groupby with y1 as a key
  lines = groupby( sorted_words, key = itemgetter( 3 ) )

Joignez et Split PDF Documents en python Comme

La combinaison de PDF fichiers différents est une caractéristique très utile qui permet aux utilisateurs d'avoir une PDF fichiers plutôt que d'avoir une douzaine de PDF fichiers distincts. La bibliothèque de la plate-forme transversale de source libre et ouverte YouPDF donne aux programmateurs de logiciels le pouvoir de fusionner différents fichiers ou pages de copie entre PDF documents avec facilité. Il permet également aux utilisateurs de diviser PDF documents importants en fichiers plus petits avec quelques lignes de code Python. Il est également possible de sélectionner quelques pages spécifiques d'un document de PDF et de créer un nouveau document.

Création d'un nouveau document de la première et dernière 10 pages

doc2 = fitz.open()                 # new empty PDF
doc2.insert_pdf(doc1, to_page = 9)  # first 10 pages
doc2.insert_pdf(doc1, from_page = len(doc1) - 10) # last 10 pages
doc2.save("first-and-last-10.pdf")

Lire et exporter PDF métadonnées à CSV via Python

La bibliothèque de la source ouverte VousPDF a fourni une fonctionnalité complète pour l'accès et la lecture de métadonnées de PDF fichiers sans dépendances externes. Il appuie divers types de clés de métadonnées comme la date de création, l'auteur, le titre, l'application des créateurs, tout sujet, la méthode de chiffrement, le format des fichiers, etc. Il est également possible d'exporter des métadonnées à CSV formats.

 

Exportation PDF Métadonnées à CSV via Python API

import csv
import fitz
import argparse
parser = argparse.ArgumentParser(description="Enter CSV delimiter [;], CSV filename and documment filename")
parser.add_argument('-d', help='CSV delimiter [;]', default = ';')
parser.add_argument('-x', help='delete XML info [n]', default = 'n')
parser.add_argument('-csv', help='CSV filename')
parser.add_argument('-pdf', help='PDF filename')
args = parser.parse_args()
delim = args.d               # requested CSV delimiter character
assert args.csv, "missing CSV filename"
assert args.pdf, "missing PDF filename"
print "delimiter", args.d
print "xml delete", args.x
print "csv file", args.csv
print "pdf file", args.pdf
print "----------------------------------------"
doc = fitz.open(args.pdf)
oldmeta = doc.metadata
print "old metadata:"
for k,v in oldmeta.items():
    print k, ":",v
with open(args.csv) as tocfile:
    tocreader = csv.reader(tocfile, delimiter = delim)
    for row in tocreader:
        assert len(row) == 2, "each row must contain 2 entries"
        oldmeta[row[0]] = row[1]
print "----------------------------------------"
print "\nnew metadata:"
for k,v in oldmeta.items():
    print k, ":",v
doc.set_metadata(oldmeta)
doc.saveIncr()
 Français