PyMuPDF
Perpustakaan Python Sumber Terbuka untuk Mengelola Metadata PDF
Coba pustaka Python PyMuPDF, Gratis & Sumber Terbuka untuk mengakses dan mengubah metadata dokumen PDF.
Apa itu PyMuPDF?
PyMuPDF, juga dikenal sebagai Fitz, adalah pustaka Python sumber terbuka yang menawarkan banyak fitur seperti parsing PDF, memisahkan dan menggabungkan PDF dll. tetapi di halaman ini kita hanya akan membahas bagaimana pengembang Python dapat menggunakan pustaka PyMuPDF untuk menangani tugas terkait metadata PDF seperti:
- Baca Metadata PDF: PyMuPDF mendukung akses metadata dokumen PDF yang berisi informasi seperti penulis, judul, subjek dan tanggal pembuatan, dll.
- Ubah Metadata PDF: Pustaka juga memungkinkan pengubahan metadata dokumen PDF.
- Baca Metadata XML: Dokumen PDF juga berisi metadata XML yang tidak terbatas pada properti dokumen standar seperti penulis, judul, dll. dan dapat memiliki metadata tambahan. Dengan PyMuPDF, pengembang juga dapat membacanya.
- Ubah Metadata XML: Pengembang juga dapat mengubah metadata XML PDF menggunakan pustaka PyMuPDF.
Memulai dengan PyMuPDF
Anda memerlukan Python versi 3.8.0 atau lebih tinggi untuk menginstal dan menggunakan PyMuPDF. Jadi, pertama-tama instal Python lalu gunakan perintah di bawah ini untuk menginstal PyMuPDF di mesin Anda menggunakan pip dan lingkungan virtual.
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
jendela
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
Baca Metadata PDF
Kita dapat membaca metadata PDF menggunakan anggota metadata dari perpustakaan PyMuPDF yang berisi konten metadata lengkap dari dokumen tersebut. Cuplikan kode di bawah ini menunjukkan cara mendapatkan metadata PDF dari anggota metadata:
Keluaran
Tangkapan layar di bawah menunjukkan metadata yang diambil dari PDF menggunakan PyMuPDF:
Edit Metadata PDF
Kita dapat mengedit metadata PDF menggunakan pustaka PyMuPDF dengan meneruskan kamus yang berisi bidang yang ingin kita ubah beserta nilai barunya ke metode set_metadata seperti yang ditunjukkan dalam cuplikan kode di bawah ini:
Baca Metadata XML PDF
Kita dapat mengambil metadata XML dari PDF menggunakan perpustakaan PyMuPDF. Kami menggunakan metode get_xml_metadata yang mengembalikan seluruh metadata XML seperti yang ditunjukkan dalam cuplikan kode di bawah ini:
Keluaran
Tangkapan layar di bawah menunjukkan metadata XML yang diambil dari PDF menggunakan PyMuPDF:
Ubah Metadata XML PDF
Kita dapat mengatur atau mengubah metadata XML PDF menggunakan metode set_xml_metadata dari perpustakaan PyMuPDF. Hal ini tidak semudah mengganti metadata tingkat dokumen karena set_xml_metadata akan menerima string apa pun dan mengganti metadata XML lengkap dengan string yang diteruskan ke sana.
Untuk menghindari penghapusan informasi metadata yang tidak disengaja, pertama-tama kita mengambil metadata XML lengkap sebagai string menggunakan get_xml_metadata dan kemudian menggunakan metode string replace untuk mengganti informasi yang diinginkan akhirnya, kami meneruskan XML lengkap dengan bidang yang diubah ke metode set_xml_metadata yang mengubah seluruh metadata XML PDF. Periksa cuplikan kode di bawah ini untuk detailnya:
Kesimpulan
Singkatnya, PyMuPDF adalah alat hebat untuk tugas-tugas yang berkaitan dengan manipulasi metadata. Kami dapat dengan mudah mengambil dan mengubah informasi metadata PDF. Namun, kelemahan penting terletak pada metode set_xml_metadata. Metode ini menerima string apa pun yang diteruskan ke sana dan menimpa XML sebelumnya yang dapat menyebabkan hilangnya informasi secara tidak sengaja. Untuk menghindari masalah ini, pengembang diharuskan menerapkan logika mereka untuk memastikan modifikasi yang benar dalam metadata XML.