PyMuPDF
Biblioteca Python de codi obert per gestionar les metadades de PDF
Proveu PyMuPDF, la biblioteca Python gratuïta i de codi obert per accedir i modificar les metadades dels documents PDF.
Què és PyMuPDF?
PyMuPDF, també conegut com Fitz, és una biblioteca Python de codi obert que ofereix moltes funcions com ara analitzar PDF, dividir i fusionar PDF, etc., però en aquesta pàgina només parlarem de com els desenvolupadors de Python poden utilitzar la biblioteca PyMuPDF per gestionar les metadades de PDF relacionades tasques com ara:
- Llegir metadades PDF: PyMuPDF admet l'accés a metadades de documents PDF que contenen informació com ara l'autor, el títol, el tema i la data de creació, etc.
- Modifica les metadades del PDF: la biblioteca també permet modificar les metadades dels documents PDF.
- Llegir metadades XML: els documents PDF també contenen metadades XML que no es limiten a les propietats estàndard del document, com ara l'autor, el títol, etc., i poden tenir metadades addicionals. Amb PyMuPDF, els desenvolupadors també poden llegir-lo.
- Canviar les metadades XML: els desenvolupadors també poden canviar les metadades XML dels PDF mitjançant la biblioteca PyMuPDF.
Com començar amb PyMuPDF
Necessiteu la versió 3.8.0 o superior de Python per instal·lar i utilitzar PyMuPDF. Per tant, primer instal·leu Python i després utilitzeu les ordres següents per instal·lar PyMuPDF a la vostra màquina mitjançant pip i virtual medi ambient.
Linux
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
MacOS
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
Llegir metadades PDF
Podem llegir metadades d'un PDF utilitzant el membre metadades de la biblioteca PyMuPDF que conté el contingut complet de metadades del document. El fragment de codi següent mostra com obtenir les metadades d'un PDF del membre de metadades:
Sortida
La captura de pantalla següent mostra les metadades recuperades d'un PDF mitjançant PyMuPDF:
Edita les metadades del PDF
Podem editar les metadades dels PDF mitjançant la biblioteca PyMuPDF passant un diccionari que conté els camps que volem canviar juntament amb els seus valors nous al mètode set_metadata, tal com es mostra al fragment de codi següent:
Llegiu les metadades XML dels PDF
Podem recuperar metadades XML d'un PDF mitjançant la biblioteca PyMuPDF. Utilitzem el mètode get_xml_metadata que retorna totes les metadades XML tal com es mostra al fragment de codi següent:
Sortida
La captura de pantalla següent mostra les metadades XML recuperades d'un PDF mitjançant PyMuPDF:
Canviar les metadades XML dels PDF
Podem establir o canviar les metadades XML d'un PDF mitjançant el mètode set_xml_metadata de la biblioteca PyMuPDF. No és tan senzill com substituir les metadades a nivell de document perquè set_xml_metadata acceptarà qualsevol cadena i substituirà les metadades XML completes per la cadena que se li passa.
Per evitar la supressió involuntaria de qualsevol informació de metadades, primer obtenim les metadades XML completes com a cadena mitjançant el get_xml_metadata i després utilitzem el mètode replace de cadena per substituir la cadena desitjada. Finalment, passem l'XML complet amb els camps modificats al mètode set_xml_metadata que canvia totes les metadades XML del PDF. Comproveu el fragment de codi següent per obtenir més informació:
Conclusió
En resum, PyMuPDF és una gran eina per a tasques relacionades amb la manipulació de metadades. Podem recuperar i canviar fàcilment la informació de metadades dels PDF. Tanmateix, una debilitat notable rau en el mètode set_xml_metadata. Aquest mètode accepta qualsevol cadena que se li passi i sobreescriu l'XML anterior amb ell, cosa que pot provocar una pèrdua d'informació no intencionada per evitar aquest problema, els desenvolupadors han d'implementar la seva lògica per garantir les modificacions correctes a les metadades XML.