PyMuPDF
PDF Meta Verilerini Yönetmek için Açık Kaynak Python Kitaplığı
PDF belgelerinin meta verilerine erişmek ve bunları değiştirmek için PyMuPDF, Ücretsiz ve Açık Kaynak Python kitaplığını deneyin.
PyMuPDF nedir?
Fitz olarak da bilinen PyMuPDF, PDF'leri ayrıştırma, PDF'leri bölme ve birleştirme vb. ancak bu sayfada yalnızca Python geliştiricilerinin PyMuPDF kitaplığını PDF meta verileriyle ilgili aşağıdaki gibi görevleri gerçekleştirmek için nasıl kullanabileceğini tartışacağız:
- PDF Meta Verilerini Okuyun: PyMuPDF, yazar, başlık, konu ve oluşturulma tarihi vb. bilgileri içeren PDF belgelerinin meta verilerine erişimi destekler.
- PDF Meta Verilerini Değiştirme: Kitaplık ayrıca PDF belgelerinin meta verilerinin değiştirilmesine de olanak tanır.
- XML Meta Verilerini Okuyun: PDF belgeleri aynı zamanda yazar, başlık vb. gibi standart belge özellikleriyle sınırlı olmayan ve ek meta verilere sahip olabilen XML meta verilerini de içerir. PyMuPDF ile geliştiriciler de okuyabilir.
- XML Meta Verilerini Değiştirme: Geliştiriciler ayrıca PyMuPDF kitaplığını kullanarak PDF'lerin XML meta verilerini de değiştirebilirler.
PyMuPDF'e Başlarken
PyMuPDF'i kurmak ve kullanmak için Python 3.8.0 veya daha yüksek bir sürüme ihtiyacınız var. Bu nedenle, önce Python'u yükleyin ve ardından pip ve sanal ortam
Linux
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
Mac os işletim sistemi
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
pencereler
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
PDF Meta Verilerini Okuyun
Belgenin tüm meta veri içeriğini içeren PyMuPDF kütüphanesinin meta veri üyesini kullanarak bir PDF'nin meta verilerini okuyabiliriz. Aşağıdaki kod parçacığı, bir PDF'nin meta verilerinin meta veri üyesinden nasıl alınacağını gösterir:
Çıktı
Aşağıdaki ekran görüntüsü PyMuPDF kullanılarak bir PDF'den alınan meta verileri göstermektedir:
PDF Meta Verilerini Düzenle
Değiştirmek istediğimiz alanları ve yeni değerlerini içeren bir sözlüğü aşağıdaki kod parçacığında gösterildiği gibi set_metadata yöntemine geçirerek PyMuPDF kütüphanesini kullanarak PDF'lerin meta verilerini düzenleyebiliriz:
PDF'lerin XML Meta Verilerini Okuyun
PyMuPDF kütüphanesini kullanarak bir PDF'nin XML meta verilerini alabiliriz. Aşağıdaki kod parçacığında gösterildiği gibi XML meta verilerinin tamamını döndüren get_xml_metadata yöntemini kullanıyoruz:
Çıktı
Aşağıdaki ekran görüntüsü PyMuPDF kullanılarak PDF'den alınan XML meta verilerini göstermektedir:
PDF'lerin XML Meta Verilerini Değiştirme
PyMuPDF kütüphanesinin set_xml_metadata yöntemini kullanarak PDF'nin XML meta verilerini ayarlayabilir veya değiştirebiliriz. set_xml_metadata herhangi bir dizeyi kabul edeceğinden ve XML meta verilerinin tamamını kendisine iletilen dizeyle değiştireceğinden, belge düzeyindeki meta verileri değiştirmek kadar basit değildir.
Herhangi bir meta veri bilgisinin istenmeden silinmesini önlemek için, önce get_xml_metadata'yı kullanarak XML meta verilerinin tamamını bir dize olarak getiririz ve ardından değiştirmek için replace dize yöntemini kullanırız. İstenilen bilgiyi son olarak, değiştirilen alanlarla birlikte XML'in tamamını, PDF'nin tüm XML meta verilerini değiştiren set_xml_metadata yöntemine aktarırız. Ayrıntılar için aşağıdaki kod parçacığını kontrol edin:
Çözüm
Özetle PyMuPDF, meta veri manipülasyonuyla ilgili görevler için harika bir araçtır. PDF'lerin meta veri bilgilerini kolayca alabilir ve değiştirebiliriz. Ancak set_xml_metadata yönteminde dikkate değer bir zayıflık bulunmaktadır. Bu yöntem, kendisine iletilen herhangi bir dizeyi kabul eder ve önceki XML'in üzerine yazar; bu durum, bu sorunu önlemek için kasıtsız bilgi kaybına neden olabilir. Geliştiricilerin, XML meta verilerinde doğru değişiklikleri sağlamak için kendi mantıklarını uygulamaları gerekir.