1. Продукти
  2.   PDF
  3.   Python
  4.   PDFMiner
 
  

Отримайте інформацію з PDF-файлів за допомогою безкоштовної бібліотеки Python

Безкоштовний API Python, який дозволяє розробникам отримувати інформацію з PDF-документів і перетворювати PDF в інші формати, а також виконує автоматичний аналіз макета.

PDFMiner — це дуже проста у використанні бібліотека Python з відкритим кодом для обробки PDF-файлів без будь-яких інших залежностей. PDFMine.six форк оригінальної бібліотеки PDFMiner, який підтримується спільнотою. Бібліотека надала дуже потужні функції для вилучення інформації з документів PDF. Він надає командну утиліту для непрограмістів та інтерфейс API для програмістів. Потужний конвертер PDF також є частиною бібліотеки, яка допомагає користувачам перетворювати PDF-файли в інші текстові формати, наприклад HTML.

PDFMiner — це чиста бібліотека Python, яка може легко витягувати всі тексти з PDF-файлу, які відображаються програмно. Чудова можливість полягає в тому, що він також виділяє відповідні місця, назви та розміри шрифтів і напрямок написання (горизонтальний або вертикальний) для кожного сегмента тексту. Він підтримує специфікацію PDF-1.7 і забезпечує підтримку видобування документів PDF, захищених паролем. Бібліотека включає кілька інших важливих функцій, таких як синтаксичний аналіз, аналіз і конвертація PDF-документів, видобування вмісту як HTML або hOCR, підтримка сценаріїв вертикального запису, підтримка шифрування RC4 і AES, вилучення змісту, видобування вмісту з тегами, автоматичне макетування аналіз і так далі.

Previous Next

Початок роботи з PDFMiner

PDFMiner вимагає Python 3.6 або новішої версії. Ви можете встановити PDFMiner за допомогою pip. Щоб установити його, скористайтеся наступною командою.

Встановіть PDFMiner через pip

 pip install pdfminer 

Ви також можете завантажити скомпільовану спільну бібліотеку зі сховища GitHub і встановити її.

Витягніть текст із файлу PDF за допомогою Python

Бібліотека Pdfminer.six з відкритим вихідним кодом дає розробникам програмного забезпечення можливість видобувати текст із PDF-файлу лише за допомогою кількох рядків коду Python. Бібліотека зосереджується на отриманні й аналізі текстових даних, а потім витягує текст зі сторінки безпосередньо з вихідного коду PDF-файлу. Бібліотека також дозволяє розробникам видобувати зображення (JPG, JBIG2, растрові зображення) із файлу PDF. Також можна витягти назву шрифту або розмір кожного окремого символу. У наведених нижче прикладах показано, як отримати текст із PDF-файлу та надрукувати його на екрані.

Відкривайте та маніпулюйте PDF-документами через Python

 from pdfminer.high_level import extract_text
# Extract text from a pdf.
text = extract_text('example.pdf')
# Extract iterable of LTPage objects.
pages = extract_pages('example.pdf')
print(text)

Перетворіть PDF-файл на hOCR за допомогою API Python

hOCR — це відкритий стандарт представлення даних для форматованого тексту, отриманого за допомогою оптичного розпізнавання символів (OCR). Безкоштовні бібліотеки Pdfminer.six дозволяють розробникам програмного забезпечення перетворювати PDF-файли у формат hOCR за допомогою лише кількох рядків коду Python. З бібліотекою дуже легко працювати, вона може витягувати явну текстову інформацію з PDF-файлів, які її містять, і використовувати її для створення базового представлення hOCR.

Перетворення файлу PDF на текст за допомогою Python

Бібліотека містить багатий набір функцій і можливостей, які дозволяють вийти за рамки базової обробки PDF. Бібліотека Pdfminer.six з відкритим вихідним кодом дозволяє розробникам Python перетворювати PDF-документи на текст за допомогою кількох простих команд. Спочатку вам потрібно вказати шлях до PDF-файлів, а також до текстового файлу. Якщо документ захищено паролем, вам також потрібно вказати його пароль. Наведений нижче приклад коду можна використати для досягнення мети, він просто повертає рядок у PDF-файлі, враховуючи його ім’я файлу, ви можете легко зберегти його у файлі.

Перетворіть файл PDF у текстовий формат за допомогою API Python

 from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
def convert_pdf_to_txt(path):
    rsrcmgr = PDFResourceManager()
    retstr = StringIO()
    codec = 'utf-8'
    laparams = LAParams()
    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
    fp = open(path, 'rb')
    interpreter = PDFPageInterpreter(rsrcmgr, device)
    password = ""
    maxpages = 0
    caching = True
    pagenos=set()
    for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):
        interpreter.process_page(page)
    text = retstr.getvalue()
    fp.close()
    device.close()
    retstr.close()
    return text
 Українська