PNG JPG BMP TIFF PDF
Aspose.PDF  для Python

Извлечь страницы из PDF в Python SDK

Извлечение страниц из PDF документа с использованием облачных Cloud Python SDK.

Get Started

Как получить страницы из PDF с помощью облачного Python SDK

Чтобы извлечь страницы из PDF, мы будем использовать Aspose.PDF Cloud Python SDK. Этот облачный SDK помогает программистам на Python разрабатывать облачные приложения для создания, аннотирования, редактирования и конвертации PDF с помощью Aspose.PDF REST API. Просто создайте учетную запись на Aspose для облака и получите информацию о вашем приложении. Как только у вас будет App SID & ключ, вы готовы использовать Aspose.PDF Cloud Python SDK. Если пакет Python размещен на Github, вы можете установить его напрямую из Github:

Установка из Github


     
    pip install git+https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-python.git

Команда Package Manager Console

     
    pip install asposepdfcloud

Шаги для получения страниц из PDF с помощью Python SDK

Разработчики Aspose.PDF Cloud могут легко загрузить и извлечь страницы из PDF всего за несколько строк кода.

  1. Установите Python SDK
  2. Загрузите PDF документ на сервер Aspose Cloud
  3. Загрузите обработанный PDF документ с сервера Aspose Cloud
  4. Получите информацию о страницах PDF документа
 

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


    import shutil
    import json
    import logging
    from pathlib import Path
    from asposepdfcloud import ApiClient, PdfApi, DocumentPagesResponse

    # Configure logging
    logging.basicConfig(level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s")


    class Config:
        """Configuration parameters."""
        CREDENTIALS_FILE = Path(r"C:\\Projects\\ASPOSE\\Pdf.Cloud\\Credentials\\credentials.json")
        LOCAL_FOLDER = Path(r"C:\Samples")
        PDF_DOCUMENT_NAME = "sample.pdf"
        LOCAL_RESULT_DOCUMENT_NAME = "output_sample.png"
        PAGE_NUMBER = 2

    class PdfPages:
        """ Class for managing PDF pages using Aspose PDF Cloud API. """
        def __init__(self, credentials_file: Path = Config.CREDENTIALS_FILE):
            self.pdf_api = None
            self._init_api(credentials_file)

        def _init_api(self, credentials_file: Path):
            """ Initialize the API client. """
            try:
                with credentials_file.open("r", encoding="utf-8") as file:
                    credentials = json.load(file)
                    api_key, app_id = credentials.get("key"), credentials.get("id")
                    if not api_key or not app_id:
                        raise ValueError("init_api(): Error: Missing API keys in the credentials file.")
                    self.pdf_api = PdfApi(ApiClient(api_key, app_id))
            except (FileNotFoundError, json.JSONDecodeError, ValueError) as e:
                logging.error(f"init_api(): Failed to load credentials: {e}")

        def upload_document(self):
            """ Upload a PDF document to the Aspose Cloud server. """
            if self.pdf_api:
                file_path = Config.LOCAL_FOLDER / Config.PDF_DOCUMENT_NAME
                try:
                    self.pdf_api.upload_file(Config.PDF_DOCUMENT_NAME, str(file_path))
                    logging.info(f"upload_document(): File {Config.PDF_DOCUMENT_NAME} uploaded successfully.")
                except Exception as e:
                    logging.error(f"upload_document(): Failed to upload file: {e}")

        def get_page_info(self):
            """ Get page information of the PDF document. """
            if self.pdf_api:
                result_pages: DocumentPagesResponse = self.pdf_api.get_page(Config.PDF_DOCUMENT_NAME, Config.PAGE_NUMBER)

                if result_pages.code == 200:
                    logging.info(f"Page #{Config.PAGE_NUMBER} information: {result_pages.page}")
                else:
                    logging.error(f"Failed to get the page #{Config.PAGE_NUMBER}.")

        def get_page_as_png(self):
            """ Get page information of the PDF document. """
            if self.pdf_api:
                try:
                    result_pages = self.pdf_api.get_page_convert_to_png(Config.PDF_DOCUMENT_NAME, Config.PAGE_NUMBER)
                    local_path = Config.LOCAL_FOLDER / Config.LOCAL_RESULT_DOCUMENT_NAME
                    shutil.move(result_pages, str(local_path))
                    logging.info(f"download_result(): File successfully downloaded: {local_path}")
                except Exception as e:
                    logging.error(f"download_result(): Failed to download file: {e}")

    if __name__ == "__main__":
        pdf_pages = PdfPages()
        pdf_pages.upload_document()
        pdf_pages.get_page_info()
        pdf_pages.get_page_as_png()
 

Работа с страницами в PDF

Извлечение страниц из PDF—это распространенная задача, служащая различным целям в разных контекстах. Этот процесс включает в себя выбор определенных страниц из более крупного документа для создания нового, отдельного PDF файла. Понимание причин этой практики может помочь в эффективном управлении и использовании PDF документов.​ Большие PDF файлы могут быть неудобными для передачи или хранения. Извлекая только необходимые страницы, пользователи могут создать меньшие, более управляемые файлы. Это особенно полезно, когда только часть документа важна для конкретной цели. Например, удаление ненужных страниц может значительно уменьшить размер файла, облегчив его обработку и распространение. ​ Извлечение страниц позволяет пользователям использовать содержимое для различных приложений. Например, мы можем извлечь страницы из всеобъемлющего отчета, чтобы создать самостоятельный обзор или выделить конкретные данные для анализа. Это позволяет повторно использовать существующее содержимое без необходимости создавать информацию с нуля. Извлеките страницы из PDF документов с помощью Aspose.PDF Cloud Python SDK.

С нашей библиотекой Python вы можете:

  • Объединять PDF документы.
  • Разделять PDF файлы.
  • Преобразовывать PDF в другие форматы и обратно.
  • Управлять аннотациями.
  • Работать с изображениями в PDF и т.д.
  • Вы можете опробовать наше бесплатное приложение, чтобы протестировать функциональность онлайн.