Розробляйте програми для роботи з PDF-файлами за допомогою бібліотеки Python
API Python із відкритим кодом, здатний розділяти, об’єднувати, обрізати та трансформувати сторінки PDF-файлів, додавати спеціальні дані та паролі до PDF.
PyPDF2 — це чиста бібліотека Python з відкритим кодом, яка надає можливість працювати з PDF-файлами в програмах Python без будь-яких зовнішніх залежностей. Бібліотека включає підтримку багатьох важливих PDF-функцій, таких як об’єднання кількох PDF-файлів, вилучення вмісту PDF-файлу, поворот сторінок PDF-файлу під кутом, масштабування PDF-сторінок, трансформація сторінок PDF-файлів, вилучення зображень зі сторінок PDF та набагато більше.
Бібліотеку програмування з відкритим кодом PyPDF2 дуже легко у використовувати, а вихідний код добре задокументований і простий для розуміння. Бібліотека дозволяє розробникам читати та видобувати метадані PDF-файлів, наприклад кількість сторінок, автора, творця, час створення та останнього оновлення тощо. Бібліотека також підтримує шифрування та дешифрування PDF-файлів за допомогою лише кількох рядків коду Python.
.
Початок роботи з PyPDF2
PyPDF2 не є частиною стандартної бібліотеки Python, тому вам потрібно буде встановити його самостійно. Кращим способом зробити це є використання pip.
Встановіть PyPDF2 через pip
python -m pip install pypdf2
Витягніть текст із PDF за допомогою Python
Бібліотека PyPDF2 надає можливість програмного вилучення тексту з PDF-файлів за допомогою Python. Отримати дані з PDF-файлу нелегко, оскільки спосіб зберігання інформації у PDF лише ускладнює це. PyPDF2 полегшує роботу розробників, надаючи їм прості у використанні вбудовані функції для отримання інформації. Вони можуть використовувати метод extractText() для об’єкта сторінки, щоб отримати текстовий вміст сторінки.
Витягніть текст із PDF за допомогою Python
// extract text from a PDF
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
page = reader.pages[0]
print(page.extract_text())
Читання PDF-файлів через Python
Бібліотека PyPDF2 надає можливість програмного вилучення тексту з PDF-файлів за допомогою Python. Отримати дані з PDF-файлу нелегко, оскільки спосіб зберігання інформації у PDF лише ускладнює це. PyPDF2 полегшує роботу розробників, надаючи їм прості у використанні вбудовані функції для отримання інформації. Вони можуть використовувати метод extractText() для об’єкта сторінки, щоб отримати текстовий вміст сторінки.
Читання файлу PDF через Python
// Reading text from a PDF
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
for page in reader.pages:
if "/Annots" in page:
for annot in page["/Annots"]:
subtype = annot.get_object()["/Subtype"]
if subtype == "/Text":
print(annot.get_object()["/Contents"])
Об’єднати або розділити PDF-документи
Ви коли-небудь були в ситуації, коли вам потрібно було об’єднати два або більше файлів PDF в один документ? Організація часто вимагає об’єднання кількох файлів PDF в один документ. Бібліотека PyPDF2 надає можливість поєднувати PDF-файли лише з кількома рядками коду Python. Розробники також можуть легко розділяти великі документи PDF на менші відповідно до своїх потреб. Розробники можуть легко витягти певну частину PDF-книги або розділити її на кілька PDF-файлів
Об’єднайте PDF-файли за допомогою Python
// Merge PDF files
from PyPDF2 import PdfMerger
merger = PdfMerger()
for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
merger.append(pdf)
merger.write("merged-pdf.pdf")
merger.close()
Витяг метаданих із PDF-файлів
Бібліотека PyPDF2 включає функції для вилучення метаданих із документів PDF за допомогою кількох команд Python. Ви можете легко отримати інформацію про автора, програму творця, кількість сторінок, назву документа та дати створення тощо. Ви можете легко витягти метадані PDF-документів і використовувати їх відповідно до своїх потреб.
Видобудьте метадані з PDF за допомогою Python
// Reading PDF Metadata
from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
meta = reader.metadata
print(len(reader.pages))
# All of the following could be None!
print(meta.author)
print(meta.creator)
print(meta.producer)
print(meta.subject)
print(meta.title)