Извлечение закладок из PDF в Python SDK
Извлечение закладок в документ PDF с использованием Cloud Python SDK.
Get StartedКак извлечь закладки из PDF через Cloud Python SDK
Для извлечения закладок из PDF мы будем использовать Aspose.PDF Cloud Python SDK. Этот Cloud SDK помогает программистам на Python разрабатывать облачные приложения для создания, аннотирования, редактирования и конвертации PDF с использованием REST API Aspose.PDF. Просто создайте учетную запись на Aspose for Cloud и получите информацию о вашем приложении. Как только у вас будут 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
Команда консоли диспетчера пакетов
pip install asposepdfcloud
Шаги для получения закладок из PDF через Python SDK
Разработчики Aspose.PDF Cloud могут легко загрузить и извлечь закладки из PDF всего за несколько строк кода.
- Установите Python SDK
- Загрузите документ PDF на сервер Aspose Cloud
- Получите закладку для конкретного документа PDF, используя путь к закладке
Извлечение закладок из PDF с использованием Python
import shutil
import json
import logging
from pathlib import Path
from asposepdfcloud import ApiClient, PdfApi, BookmarkResponse
# 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"
BOOKMARK_PATH = "/5"
class PdfBookmarks:
"""Class for managing PDF bookmarks 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("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"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"File {Config.PDF_DOCUMENT_NAME} uploaded successfully.")
except Exception as e:
logging.error(f"Failed to upload file: {e}")
def get_bookmark(self):
"""Get bookmark for a specific PDF document using bookmark path."""
if self.pdf_api:
try:
response : BookmarkResponse = self.pdf_api.get_bookmark( Config.PDF_DOCUMENT_NAME, Config.BOOKMARK_PATH)
if response.code == 200:
logging.info(f"Found bookmark => level: '{response.bookmark.level}' - action: '{response.bookmark.action}' - title: '{response.bookmark.title}'")
else:
logging.error(f"Failed to find bookmark for the document. Response code: {response.code}")
except Exception as e:
logging.error(f"Error while find bookmark: {e}")
if __name__ == "__main__":
pdf_bookmarks = PdfBookmarks()
pdf_bookmarks.upload_document()
pdf_bookmarks.get_bookmark()
Работа с закладками в PDF
Извлечение закладок из PDF улучшает удобство использования документа, автоматизирует обработку контента и увеличивает возможность поиска. Это особенно полезно для бизнеса, исследователей и профессионалов, работающих с большими или структурированными PDF-документами. Извлекайте закладки из PDF-документов с помощью Aspose.PDF Cloud Python SDK.
С нашей библиотекой Python вы можете:
- Объединять PDF-документы.
- Разделять PDF-файлы.
- Конвертировать PDF в другие форматы и наоборот.
- Управлять аннотациями.
- Работать с изображениями в PDF и т.д.
- Вы можете попробовать наши бесплатные приложения для тестирования функциональности онлайн.