Извлечь определенные страницы из PDF

Вам может потребоваться извлечь определенные страницы из документов PDF или разбить большие документы PDF на более мелкие части. Как разработчик Python, вы можете легко извлекать определенные страницы из документов PDF по номерам страниц или по диапазону страниц программным путем. В этой статье вы узнаете, как извлекать определенные страницы из PDF-документов с помощью REST API в Python.

В этой статье должны быть раскрыты следующие темы:

Разделитель документов REST API и Python SDK

Для извлечения страниц из документов PDF я буду использовать API Python SDK of GroupDocs.Merger Cloud. Это многофункциональный и высокопроизводительный облачный SDK, используемый для объединения нескольких документов в один документ. Это также позволяет вам разделить один документ на несколько документов. SDK предлагает функции для удаления, обмена, поворота или изменения ориентации страницы для всего или предпочтительного диапазона страниц, а также для простого выполнения других манипуляций с любыми поддерживаемыми форматами файлов, такими как рабочие листы PDF, Word, Powerpoint и Excel. В настоящее время он также предоставляет SDK для .NET, Java, PHP, Ruby, Android и Node.js в качестве членов семейства слияния документов для Cloud API.

Вы можете установить GroupDocs.Merger-Cloud в свой проект Python, используя следующую команду в консоли:

pip install groupdocs_merger_cloud

Пожалуйста, получите свой идентификатор клиента и секрет клиента на панели управления, прежде чем приступать к выполнению шагов и доступных примеров кода. Получив свой идентификатор и секрет, добавьте код, как показано ниже:

client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"

configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Извлечение определенных страниц из PDF с помощью REST API в Python

Вы можете извлечь определенные страницы из документов PDF, выполнив простые шаги, указанные ниже:

  1. Загрузить файл PDF в облако
  2. Извлечь определенные страницы по номерам страниц из загруженного PDF-файла
  3. Скачать извлеченный(е) файл(ы)

Загрузить документ

Прежде всего, загрузите многостраничный PDF-документ в облако, используя приведенный ниже пример кода:

# создать экземпляр API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""

# загрузить образцы файлов
request = groupdocs_merger_cloud.UploadFileRequest("ten-pages.pdf", "C:\\Files\\ten-pages.pdf", my_storage)
response = file_api.upload_file(request)

В результате файл PDF будет загружен в облачное хранилище и будет доступен в разделе файлов вашей панели управления.

Извлечение определенных страниц по номерам страниц с помощью Python

Пожалуйста, следуйте шагам, указанным ниже, чтобы программно извлечь определенную страницу или несколько страниц из PDF-документа.

  • Создайте экземпляр Document API.
  • Предоставить параметры разделения
  • Установить путь к входному файлу
  • Установите путь к выходному каталогу
  • Укажите номера страниц через запятую для извлечения
  • Установите режим Страницы
  • Создать сплит-запрос
  • Получите результаты, вызвав метод DocumentApi.split().

В следующем примере кода показано, как извлечь страницы, указав определенные номера страниц из документа PDF с помощью REST API.

# инициализация API
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# определить параметры разделения
options = groupdocs_merger_cloud.SplitOptions()
options.file_info = groupdocs_merger_cloud.FileInfo("ten-pages.pdf")
options.output_path = "Output"
options.pages = [1, 3]
options.mode = "Pages"

# создать разделенный запрос
split_request = groupdocs_merger_cloud.SplitRequest(options)
result = documentApi.split(split_request)        

print("Documents count = " + str(len(result.documents)))
Извлечение определенных страниц из PDF с помощью Python

Извлечение определенных страниц из PDF с помощью Python

Загрузите извлеченные файлы страниц

Приведенный выше пример кода сохранит извлеченные страницы в отдельных файлах PDF в облаке. Вы можете загрузить их, используя следующий пример кода:

# инициализация API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""

# запрос на скачивание файла
request = groupdocs_merger_cloud.DownloadFileRequest("Output\\ten-pages_1.pdf", my_storage)
response = file_api.download_file(request)

# переместите загруженный файл в свой рабочий каталог
shutil.move(response, "C:\\Files\\")

Извлечение страниц по диапазону страниц с помощью Python

Выполните указанные ниже шаги, чтобы извлечь страницы из документа PDF, предоставив диапазон страниц программным путем.

  • Создайте экземпляр Document API.
  • Предоставить параметры разделения
  • Установить путь к входному файлу
  • Установите путь к выходному каталогу
  • Укажите диапазон страниц, установив номер начальной страницы и номер конечной страницы для извлечения
  • Установите режим Страницы
  • Создать сплит-запрос
  • Получите результаты, вызвав метод DocumentApi.split().
  • Создать DownloadFileRequest
  • Загрузите файл, вызвав метод FileApi.download\file().

В следующем примере кода показано, как извлечь страницы, предоставив диапазон страниц из документа PDF с помощью REST API. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить файлы.

# инициализация API
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""

# определить параметры разделения
options = groupdocs_merger_cloud.SplitOptions()
options.file_info = groupdocs_merger_cloud.FileInfo("ten-pages.pdf")
options.output_path = "Output"
options.start_page_number = 4
options.end_page_number = 7
options.mode = "Pages"

# создать разделенный запрос
split_request = groupdocs_merger_cloud.SplitRequest(options)
result = documentApi.split(split_request)   

print("Documents count = " + str(len(result.documents)))

# показывать результаты и скачивать файлы по одному
for data in result.documents:
    print("Document Url = " + str(data))
    
    # создать запрос на скачивание файла
    request = groupdocs_merger_cloud.DownloadFileRequest(data.path, my_storage)
    response = file_api.download_file(request)
    
    # Переместите загруженный файл в свой рабочий каталог
    shutil.move(response, "C:\\Files\\")
Извлечение страниц по диапазону страниц с помощью Python

Извлечение страниц по диапазону страниц с помощью Python

Попробуйте онлайн

Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент для разделения PDF-файлов, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/splitter/pdf

Заключение

В этой статье вы узнали, как извлекать определенные страницы из PDF-документов в облаке с помощью Python. Вы также узнали, как программно загрузить файл PDF в облако, а затем загрузить извлеченные файлы из облака. Вы можете узнать больше о GroupDocs.Merger Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

Смотрите также