Biblioteca Python cu sursă deschisă pentru a procesa fișiere PDF
API-ul Python gratuit permite liniarizarea PDF-urilor și accesarea PDF-urilor criptate. Acceptă crearea PDF de la zero, copierea paginilor dintr-un PDF în altul, împărțirea sau îmbinare PDF-uri și multe altele.
PikePDF este o bibliotecă PDF Python foarte simplă, care permite dezvoltatorilor de software să lucreze cu fișiere PDF în cadrul aplicațiilor Python. Se bazează pe QPDF, o bibliotecă puternică de manipulare și reparare PDF. PikePDF este o bibliotecă de transformare a conținutului PDF și oferă acces la nivel scăzut la fișierele PDF. Aceasta înseamnă că utilizatorii au nevoie de cunoștințe despre elementele interne PDF și familiaritate cu specificațiile PDF. Biblioteca este open source și este disponibilă sub licența MIT pentru uz public. Biblioteca este open source și este disponibilă sub licența MPL-2.0.
PikePDF oferă suport pentru liniarizarea PDF-urilor și accesul la PDF-uri criptate. Acesta a inclus un set foarte puternic de funcții legate de gestionarea PDF-urilor, cum ar fi crearea de PDF de la zero, copierea paginilor dintr-un PDF în altul, împărțirea sau îmbinarea PDF-urilor, extragerea imaginilor sau a textului din PDF, înlocuirea conținutului în PDF, suport pentru repararea PDF-ului, pagina suport pentru setări, gestionați metadatele PDF, lucrați cu protejate prin parolă, editarea metadatelor PDF XMP, transformarea PDF-urilor existente și multe altele.
.
Noțiuni introductive cu PikePDF
PikePDF necesită Python 3.6 și o versiune ulterioară. Puteți instala PikePDF folosind pip. Vă rugăm să utilizați următoarea comandă pentru a o instala.
Instalați PikePDF prin pip
pip install pikepdf
Copiați pagini dintr-un PDF în altul prin Python
Biblioteca open source PikePDF oferă capacitatea care le permite dezvoltatorilor de software să coptească o pagină de la un PDF la altul cu doar câteva rânduri de cod Python. Copierea paginilor între obiecte PDF va crea o copie superficială a paginii sursă în fișierul PDF țintă și, prin urmare, modificarea paginilor nu va afecta documentele PDF originale. De asemenea, este posibil să înlocuiți anumite pagini cu conținut personalizat. De asemenea, este posibil să copiați pagini dintr-un anumit PDF.
Deschideți și manipulați documente PDF prin Python
# PDF Documents Manipulation
from pikepdf import Pdf
new_pdf = Pdf.new()
with Pdf.open('sample.pdf') as pdf:
pdf.save('output.pdf')
# Copying pages from other PDFs
pdf = Pdf.open('../tests/resources/fourpages.pdf')
appendix = Pdf.open('../tests/resources/sandwich.pdf')
pdf.pages.extend(appendix.pages)
Împărțire și îmbinare PDF prin Python
Biblioteca PDF PikePDF oferă dezvoltatorilor de software puterea de a accesa fișierele PDF existente și de a le împărți cu ușurință în mai multe fișiere PDF. În timp ce împărțim PDF, tot ce avem nevoie este ca noile PDF-uri să conțină paginile de destinație. De asemenea, biblioteca se asigură că transferă datele asociate fiecărei pagini, astfel încât fiecare pagină să stea pe cont propriu. Biblioteca a inclus și suport pentru îmbinarea sau concatenarea mai multor documente PDF într-unul singur. De asemenea, este posibil să inversați ordinea paginilor PDF cu doar câteva rânduri de cod.
Împărțiți și îmbinați documente PDF prin Python
# PDF Splitting
pdf = Pdf.open('../tests/resources/fourpages.pdf')
for n, page in enumerate(pdf.pages):
dst = Pdf.new()
dst.pages.append(page)
dst.save(f'{n:02d}.pdf')
# Combine Multiple PDF pages into a single One
from glob import glob
pdf = Pdf.new()
for file in glob('*.pdf'):
src = Pdf.open(file)
pdf.pages.extend(src.pages)
pdf.save('merged.pdf')
Gestionați imaginile din documentul PDF prin Python
Biblioteca PDF PikePDF facilitează pentru dezvoltatorii de software să gestioneze imaginile dintr-un fișier PDF folosind comenzile Python. Biblioteca a inclus câteva funcții importante legate de gestionarea imaginilor, cum ar fi copierea imaginilor în pagina PDF, deschiderea și vizualizarea PDF, redimensionarea imaginilor, manipularea imaginilor dintr-un PDF, extragerea imaginilor din PDF, înlocuirea imaginilor, ștergerea unei imagini din PDF și multe altele .
Extrageți imaginea și înlocuiți-o în PDF prin Python
# Extract Image & Replace PDF Images
import zlib
rawimage = pdfimage.obj
pillowimage = pdfimage.as_pil_image()
greyscale = pillowimage.convert('L')
greyscale = greyscale.resize((32, 32))
rawimage.write(zlib.compress(greyscale.tobytes()), filter=Name("/FlateDecode"))
rawimage.ColorSpace = Name("/DeviceGray")
rawimage.Width, rawimage.Height = 32, 32
Gestionarea metadatelor PDF prin Python
Metadatele PDF includ informații foarte utile despre un document PDF, cum ar fi numele autorului, data creării și modificării, cuvinte cheie, informații despre drepturile de autor și așa mai departe. Biblioteca PDF PikePDF a inclus funcționalitate completă pentru accesarea și citirea metadatelor, extragerea metadatelor, ștergerea intrărilor de metadate din documentele PDF. Următorul exemplu de cod arată cum să extrageți metadate din documente PDF.
Cum să extrageți metadatele PDF prin Python
# Extract PDF Metadata
import pikepdf
import sys
# get the target pdf file from the command-line arguments
pdf_filename = sys.argv[1]
# read the pdf file
pdf = pikepdf.Pdf.open(pdf_filename)
docinfo = pdf.docinfo
for key, value in docinfo.items():
print(key, ":", value)