PyMuPDF
Open Source Python Library for å administrere PDF-metadata
Prøv PyMuPDF, Free & Open Source Python-biblioteket for å få tilgang til og endre metadata for PDF-dokumenter.
Hva er PyMuPDF?
PyMuPDF, også kjent som Fitz, er et åpen kildekode Python-bibliotek som tilbyr mange funksjoner som parsing PDF-er, deling og sammenslåing av PDF-er osv. men på denne siden vil vi bare diskutere hvordan Python-utviklere kan bruke PyMuPDF-biblioteket til å håndtere PDF-metadatarelaterte oppgaver som:
- Les PDF-metadata: PyMuPDF støtter tilgang til metadata for PDF-dokumenter som inneholder informasjon som forfatter, tittel, emne og opprettelsesdato osv.
- Endre PDF-metadata: Biblioteket tillater også å endre metadata for PDF-dokumenter.
- Les XML-metadata: PDF-dokumenter inneholder også XML-metadata som ikke er begrenset til standard dokumentegenskaper som forfatter, tittel osv. og kan ha ytterligere metadata. Med PyMuPDF kan utviklere også lese den.
- Endre XML-metadata: Utviklere kan også endre XML-metadata for PDF-er ved å bruke PyMuPDF-biblioteket.
Komme i gang med PyMuPDF
Du trenger Python versjon 3.8.0 eller høyere for å installere og bruke PyMuPDF. Så installer først Python og bruk deretter kommandoene nedenfor for å installere PyMuPDF på maskinen din ved å bruke pip og virtuelt miljø a>.
Linux
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
Mac os
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
Windows
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
Les PDF-metadata
Vi kan lese metadata til en PDF ved å bruke metadata-medlemmet i PyMuPDF-biblioteket som inneholder hele metadatainnholdet i dokumentet. Kodebiten nedenfor viser hvordan du henter metadataene til en PDF fra metadata-medlemmet:
Skjermbildet nedenfor viser de hentede metadataene fra en PDF ved hjelp av PyMuPDF:
Rediger PDF-metadata
Vi kan redigere metadataene til PDF-er ved å bruke PyMuPDF-biblioteket ved å sende en ordbok som inneholder feltene vi ønsker å endre sammen med deres nye verdier til set_metadata-metoden som vist i kodebiten nedenfor:
Les XML-metadata for PDF-er
Vi kan hente XML-metadata fra en PDF ved å bruke PyMuPDF-biblioteket. Vi bruker get_xml_metadata-metoden som returnerer hele XML-metadataene som vist i kodebiten nedenfor:
Skjermbildet nedenfor viser XML-metadata hentet fra en PDF ved hjelp av PyMuPDF:
Endre XML-metadata for PDF-filer
Vi kan angi eller endre XML-metadataene til en PDF ved å bruke set_xml_metadata-metoden til PyMuPDF-biblioteket. Det er ikke like enkelt som å erstatte metadataene på dokumentnivå, fordi set_xml_metadata vil godta en hvilken som helst streng og erstatte de komplette XML-metadataene med strengen som sendes til den.
For å unngå utilsiktet sletting av metadatainformasjon, henter vi først de komplette XML-metadataene som en streng ved å bruke get_xml_metadata og bruker deretter erstatt-metoden for streng for å erstatte ønsket informasjon til slutt sender vi den komplette XML-en med endrede felt til set_xml_metadata-metoden som endrer hele XML-metadataene til PDF-en. Sjekk kodebiten nedenfor for detaljer:
Konklusjon
Oppsummert er PyMuPDF et flott verktøy for oppgaver relatert til metadatamanipulering. Vi kan enkelt hente og endre metadatainformasjonen til PDF-er. En bemerkelsesverdig svakhet ligger imidlertid i set_xml_metadata-metoden. Denne metoden aksepterer enhver streng som sendes til den og overskriver den forrige XML-en med den, noe som kan føre til utilsiktet tap av informasjon for å unngå dette problemet. utviklere må implementere logikken deres for å sikre korrekte endringer i XML-metadata.