1. Python dilində PDF ilə iş
PDF ilə işi niyə avtomatlaşdırmalıyıq?
Əgər sən nə vaxtsa dostlarına qrafiklər, bir yığın mətn və təsadüfi bir pişik şəkli (xoş bir effekt üçün) olan bir fayl göndərmisənsə, deməli, bilirsən ki, PDF məlumatların strukturlaşmış şəkildə ötürülməsi üçün ideal formatdır. Bu format universal və hər hansı cihazda rahat oxunan olmaqla yanaşı, sənədin dizaynını da korlamır. Amma sənədə yeni məlumatlar əlavə etməyə, onu əl ilə redaktə etməyə çalışmaq və daha kimə nə göndərildiyini unutmamaq çox yorucu olur. Burada avtomatlaşdırma köməyə gəlir!
Təsəvvür elə ki, hesabatlar avtomatik yaradılacaq, məlumatlar yığılıb gözəl bir şəkildə sıralanacaq və lazım olan səhifələr necə oldusa birləşdiriləcək! Məsələn, sən ay ərzində görülən işlər haqqında yekun bir hesabat hazırlamasını avtomatlaşdıra bilərsən, buraya bütün cədvəllər və diaqramlar daxil olmaqla. PDF sənədlərlə işin avtomatlaşdırılması xüsusən hesabatların hazırlanması, sənəd dövriyyəsi və tez-tez dəyişikliklər tələb edən böyük həcmli sənədlərlə iş zamanı faydalı olur.
PDF ilə işdə əsas tapşırıqlar
Gəlin PDF ilə işin avtomatlaşdırılması zamanı həll edəcəyimiz əsas tapşırıq növlərinə baxaq. Əvvəlcə, sənəddən mətnin çıxarılması. Bu, mətnin məzmununu təhlil etmək istədiyiniz zaman lazımlı ola bilər, gözlərini yormadan. Sonra isə, faylların birləşdirilməsi və bölünməsi. Bu, böyük hesabatların kompilyasiyasına, yaxud əksinə, verilənlərin, məsələn, rəhbərlik üçün vacib fəsilləri seçərək konkret məqsədlər üçün bölünməsinə imkan yaradır.
Həmçinin, analitika və hesabat üçün PDF hazırlığını qeyd etmək lazımdır. Buraya məzmun, bölmələr və digər köməkçi məlumatların yaradılması daxildir ki, hesabatınız yalnız informativ deyil, həm də gözləri oxşayan olsun — axı hamı hər şeyin sıralanmış olmasını sevir, özü də çox sevir ki, həmin sıralamaları özü etməsin.
Python dilində PDF ilə iş üçün əsas kitabxanalar
- PyPDF2: PDF-dən mətn oxumaq, bölmək, birləşdirmək və çıxarmaq üçün istifadə edilən kitabxana. İstifadəsi sadədir, amma yalnız əsas funksiyaları dəstəkləyir.
- PDFPlumber: PDF-dən mətn və cədvəlləri çıxarmağa imkan verir, sənədin strukturunu daha dəqiq tanıya bilir.
- ReportLab: PDF sənədləri sıfırdan yaratmaq üçün istifadə olunur, qrafiklər, cədvəllər və şəkillərlə hesabatlar hazırlamaq üçün uyğundur.
2. Haradan başlamaq lazımdır?
Gəlin, PyPDF2 kitabxanasının quraşdırılmasından və konfiqurasiyasından başlayaq, hansı ki, PDF-in avtomatlaşdırılmış işlənilməsi dünyasında bizim sadiq yoldaşımız olacaq. PyPDF2 — Python-da PDF-lə işləmək üçün yüngül və istifadəsi rahat bir kitabxanadır. Onu pip vasitəsilə aşağıdakı əmr ilə terminalda quraşdıra bilərsiniz:
pip install PyPDF2
Uğurlu quraşdırmadan sonra kitabxananın düzgün işlədiyinə əmin olmaq üçün onu Python-skriptinizdə import edin:
import PyPDF2
def check_pypdf2():
print("PyPDF2 quraşdırılıb və istifadəyə hazırdır!")
check_pypdf2()
Əgər siz salamlayıcı mesajı görürsünüzsə, deməli, hər şey hamar keçdi və siz avtomatlaşdırma yolunda növbəti addımlara hazırsınız!
3. PDF sənədlərindən mətn çıxarışı
İlk qarşılaşacağımız məsələlərdən biri PDF-dən mətn çıxarışı olacaq. Bu, məlumatların analiz edilməsi, məlumatın yoxlanışı və ya sadəcə uyumsuz formatda oxumaq üçün faydalı ola bilər.
PDF-in oxunması və parsinqi
Hər şey PDF sənədinin açılması ilə başlayır. PyPDF2 bunu sadə və zərif edir. Aşağıda sənədi açıb oxumağa imkan verən bir kod nümunəsi var:
import PyPDF2
# PDF-faylın açılması
with open("sample.pdf", "rb") as pdf_file:
pdf_reader = PyPDF2.PdfReader(pdf_file)
text = ""
for page_num in range(len(pdf_reader.pages)):
page = pdf_reader.pages[page_num]
text += page.extract_text() + "\n"
print(text)
Burada biz PDF-i açırıq, PdfReader
obyektini yaradırıq və sonra hər səhifədən mətni çıxarırıq, onu vahid sətirə birləşdiririk. Edilən işə heyran qalmaq və əldə olunan məlumatları analiz etməyə hazırlaşmaq qalır!
Xüsusi bir səhifədən mətn çıxarışı
Əgər yalnız bir səhifədən mətn çıxarmaq istəyirsinizsə, onun nömrəsini göstərə bilərsiniz.
import PyPDF2
with open("sample.pdf", "rb") as pdf_file:
pdf_reader = PyPDF2.PdfReader(pdf_file)
page = pdf_reader.pages[2] # Üçüncü səhifədən mətn çıxarışı
text = page.extract_text()
print(text)
Əgər maraqlanırsınızsa, növbəti mühazirəyə keçin. Orada sizi gözləyirəm :P
GO TO FULL VERSION