Is The Us Dollar Headed For A Collapse? Gold Prices Appear To Suggest Simply That
October 1, 2024Exciting Careers in Host Bar Job Recruitment
October 1, 2024Узнать, как в Python можно создавать и модифицировать PDF-файлы, очень и очень полезно. PDF (Portable Document Format) – это один из самых распространенных форматов для документов в интернете. Файлы в формате PDF могут содержать текст, изображения, таблицы, разнообразные формы, а также различные мультимедийные форматы видео и анимации. Причем все это может быть вместе, в одном файле. Подобное изобилие создает определенные трудности в работе с PDF-файлами. Ведь для открытия файла нужно декодировать множество различных типов данных! К счастью, в экосистеме Python есть несколько отличных пакетов для чтения, изменения и создания PDF- файлов. Создавать PDF-файл с нуля. Примеры кода и PDF-файлы, которые мы используем в данном руководстве, можно загрузить отсюда. В этом разделе вы узнаете, как читать PDF-файл и извлекать из него текст при помощи пакета PyPDF2. Однако, для начала его надо установить при помощи менеджера pip. Обратите особое внимание на версию пакета. На момент написания статьи последней версией пакета PyPDF2 была 1.26.0. Если вы используете IDE IDLE, для работы с только что установленным пакетом ее надо перезапустить.
Начнем с того, что откроем PDF-файл и считаем из него некоторую информацию. Для создания нового экземпляра класса PdfFileReader нам потребуется информация о пути к файлу, который мы хотим открыть. Будем использовать для этого модуль pathlib. Prejudice.pdf, в котором находится книга Джейн Остин «Гордость и предубеждение». Примечание: возможно вам придется изменить этот путь в соответствии с расположением директории creating-and-modifying-pdfs/ на вашем компьютере. PdfFileReader не знает, как работать с объектами pathlib.Path. Вспомним, что в Python все открытые файлы должны быть закрыты до завершения работы программы. Так вот, объект PdfFileReader все это делает за вас, и вам не нужно беспокоиться об открытии и закрытии файлов! Заметим, что создав экземпляр класса PdfFileReader, мы можем его использовать для получения информации о PDF-файле. Верблюжий регистр PEP8 советует использовать в именах классов. Но имейте в виду, что PEP8 это свод рекомендаций, а не правил. Как бы то ни было, верблюжий регистр здесь вполне приемлем. Примечание: Пакет PyPDF2 вышел из пакета pyPdf, который был написан в 2005 году, всего через 4 года после публикации PEP8.
К этому времени появилось много программистов, которые мигрировали из других языков, где верблюжий регистр был обычным делом. Объект, возвращенный атрибутом .documentInfo, выглядит как словарь, но это не совсем так. Все его значения можно также получить атрибутивным образом, обратившись к ним через точку (‘.‘). Объект, полученный при помощи атрибута .documentInfo, содержит метаданные PDF-файла, которые задаются при его создании. Класс PdfFileReader содержит все методы и атрибуты, необходимые вам для доступа к данным PDF-файла. Давайте рассмотрим, что и как можно сделать с этим файлом! Страницы PDF-файла представлены в пакете PyPDF2 классом PageObject. Мы используем экземпляры класса PageObject для взаимодействия со страницами в PDF-файле. Но нам не нужно непосредственно создавать собственные экземпляры класса PageObject. Вместо этого к ним можно получить доступ через метод .getPage() объекта класса PdfFileReader. 1. Получаем экземпляр класса PageObject при помощи метода PdfFileReader.getPage(). 2. Извлекаем текст в виде строки с помощью метода .extractText(), который есть у каждого экземпляра класса PageObject. Заметим, что вывод на экран был отформатирован при размещении на этой странице.
То, что вы увидите на своем экране, может несколько отличаться. Каждый объект класса PdfFileReader имеет атрибут .pages, при помощи которого мы можем производить итерацию по всем страницам нашего PDF-файла. Prejudice.pdf и записывает его в текстовый файл (с расширением .txt). Инструкция with гарантирует нам, что файл будет закрыт сразу же после выполнения этого блока кода. 4. И наконец, с помощью цикла for мы производим итерацию по всем страницам PDF-файла. На каждом шаге цикла в переменную page записывается элемент из объекта PageObject. Prejudice.pdf. Откройте его и убедитесь сами! Упражнение: Выведите текст из PDF файла. Создайте экземпляр класса PdfFileReader и используйте его для вывода на экран текста из первой страницы. Не забывайте, что экземпляры класса PdfFileReader могут создаваться только со строковой переменной, которая содержит в себе путь к файлу. Объекты типа Path не подходят! Если готовы, переходим ко второй секции. В предыдущей секции мы научились извлекать весь текст из PDF-файла и сохранять его в текстовый файл.
If you adored this article and you would like to get even more facts concerning pdf help kindly visit our web-site.
