1. Produkte
  2.   Pdf
  3.   Python
  4.   PyMuPDF
 
  

Gender PDF Dateien, Extrahieren von Text & Bilder über Free Python Library

Free Python API erlaubt es PDF Dateien zu bearbeiten und zu rendern; extrahieren Sie Text & Bilder, bearbeiten Sie PDF Seiten, merge/split & convert PDF Dateien mit Leichtigkeit.

PyMuPDF ist eine leichtgewichtige Open-Source-Python-API, die MuPDF Python-Bindungen und -Abstraktionen hinzufügt. Die API ist klein, aber dennoch sehr schnell und unterstützt eine Reihe gängiger Dokumentenformate, darunter PDF-, XPS-, OpenXPS-, CBZ-, EPUB- und FB2-Formate (eBooks), sowie etwa 10 gängige Bildformate, die ebenfalls geöffnet werden können wie Dokumente behandelt. Das PyMuPD ist sehr zuverlässig und bekannt für seine Top-Rendering-Fähigkeit. Da die Bibliothek sehr leicht ist, ist sie eine gute Wahl für Plattformen, auf denen die Ressourcen normalerweise begrenzt sind, wie z. B. Smartphones.

Es gibt zahlreiche grundlegende und erweiterte Funktionen, die von den YouPDF API für PDF Dokumenterstellung und Konvertierung unterstützt werden, wie z.B. die Konvertierung PDF in NG, das Ansehen und Betrachten von Metadaten. Das PyMuPDF enthält Unterstützung für zahlreiche Plattformen wie Mac, Linux und Windows.

Previous Next

Beginnen Sie mit PyMuPDF

PyMuPDF kann mit pip installiert werden, die folgenden Befehle werden von einem Python-Rad installiert, wenn einer für Ihre Plattform verfügbar ist.

PyMuPDF per Pip

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

Clone PyMuPDF via git Repository

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

Es ist auch möglich, es manuell zu installieren; Laden Sie die neuesten Release-Dateien direkt aus dem GitHub-Repository herunter.

Suche nach Text in PDF Dateien über Python

PDF ist eines der bevorzugten Dateiformate der Welt zum Austausch von Dokumenten im Internet, da es alle darin enthaltenen Textformatierungen und Grafiken enthält. Es ist jedoch nicht einfach, im Vergleich zu anderen Dokumenten nach Text in diesen Dateien zu suchen. Die kostenlose PyMuPDF-Bibliothek erlaubt es Software-Entwicklern, Textsuche-Fähigkeiten in ihren Python-Anwendungen hinzuzufügen. Er erlaubt es herauszufinden, wo auf der Seite ein Textstring existiert.

Suche Wo auf der PDF Seiten Text String erscheint über Python

areas = page.search_for("mupdf") 

Extrahieren von PDF Texten und Bildern über Python API

Die Open Source YouPDF Bibliothek hat mehrere wichtige Funktionen für die Arbeit mit PDF Texten und Bildern enthalten. Die Bibliothek hat verschiedene Funktionen zur Verfügung gestellt, um Text sowie Bilder aus PDF Dokumenten zu extrahieren. Standardmäßig erlaubt es das Extrahieren von normalem Text mit Zeilenumbrüche. Keine Formatierung, keine Textpositionsdetails, keine Bilder. Darüber hinaus unterstützt es die Erstellung einer Liste von Textblöcken, die Erstellung einer Liste von Wörtern, die Erstellung einer vollständigen visuellen Version der Seite inklusive aller Bilder und vieles mehr.

Wie Text von PDF über Python API ausgeschleust wird

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 ) )

Join and Split PDF Documents in Python As

Die Kombination verschiedener PDF Dateien ist eine sehr nützliche Funktion, die den Benutzern die Möglichkeit gibt, ein PDF zu haben, anstatt ein Dutzend verschiedener PDFer. Die freie und Open-Source Bibliothek YouPDF bietet Softwareprogrammierern die Möglichkeit, verschiedene Dateien zu mischen oder Seiten zwischen verschiedenen PDF Dokumenten zu kopieren. Es gibt auch Benutzern die Möglichkeit, große PDF Dokumente in kleinere Dateien mit nur wenigen Zeilen Python-Code aufzuteilen. Es ist auch möglich, einige spezielle Seiten eines PDF Dokuments auszuwählen und daraus ein neues Dokument zu erstellen.

Erstellt neue Dokumente From First & Last 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")

Lesen & Export PDF Metadata bis CSV über Python.

Die Open Source YouPDF Bibliothek bietet vollständige Funktionalität zum Zugriff und Lesen von Metadaten von PDF Dateien ohne externe Abhängigkeiten. Es unterstützt verschiedene Arten von Metadaten-Schlüsseln wie z.B. Datum für die Erstellung, den Autor, den Titel, die Schöpferanwendung, jedes Thema, jede Verschlüsselungsmethode, das Dateiformat usw. Es ist auch möglich, Metadaten in das CSV-Format zu exportieren.

 

Export PDF Metadaten nach CSV über 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()
 Deutsch