Быстрый и простой способ извлечения страниц из документов Word с использованием Python SDK.

разделенный текстовый документ

Разделить документ Word | Извлечь страницы из документа Word в отдельный файл

В сфере управления документами часто возникает необходимость разделить, отделить или извлечь определенные разделы из документа Word. Независимо от того, имеете ли вы дело с обширными исследовательскими работами, подробными отчетами или длинными рукописями, задача разбиения их на более управляемые части может быть как трудоемкой, так и сложной. В этой статье мы рассмотрим шаги для достижения этого требования с помощью Python Cloud SDK, что позволит вам оптимизировать задачи по управлению документами и работать более эффективно.

API обработки текстов

Aspose.Words Cloud — это наше специализированное решение для обработки MS Word (DOCX, DOC, DOT, RTF, DOCM) или OpenDocument (ODT, OTT).Для обработки документов Word не требуется стороннее программное обеспечение или автоматизация MS Office. Просто вызовите REST API, чтобы выполнить свои требования. Поскольку API основаны на REST, вы можете получить к ним доступ на любой платформе, включая настольный компьютер, веб, мобильное приложение и т. д. Теперь, в соответствии с рамками этой статьи, мы собираемся обсудить детали того, как разделить страницы в файле Word как отдельный документ Word. API также обеспечивает гибкость настройки операции разделения, т. е. разделить каждую страницу, четную и нечетную, по количеству страниц, по диапазону страниц.

Чтобы еще больше облегчить работу нашим клиентам, мы создали Aspose.Words Cloud SDK для Python, который является оболочкой вокруг Cloud API, чтобы вы могли воспользоваться всеми преимуществами обработки документов Word на вашем любимом языке программирования. Поэтому, прежде чем двигаться дальше, первым шагом является установка SDK на локальной системе. Он доступен для загрузки на PIP и GitHub. Выполните следующую команду в терминале командной строки, чтобы установить SDK:

pip install aspose-words-cloud

Если вы используете Visual Studio в качестве IDE, вы можете напрямую добавить ссылку на SDK в проект.

Нажмите Вид ->Другие окна ->Опция Python Environments. Как показано ниже.

Пункт меню «Среда Python».

Изображение 1:- Пункт меню «Среда Python».

Введите aspose-word-cloud в поле Packages в окне Python Environments. Затем щелкните ссылку Install aspose-word-cloud (21.11.0).Номер версии может меняться в зависимости от последней/текущей версии релиза. Смотрите изображение ниже.

aspose-words-cloud пакет python

Изображение 2:- пакет Python aspose-words-cloud.

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

Чтобы разделить все страницы документа Word, уже имеющегося в облачном хранилище, следуйте инструкциям ниже.

  • Во-первых, нам необходимо инициализировать объект WordsApi, передав в качестве аргументов Client ID и Client Secret.
  • Во-вторых, укажите имя входного файла Word, формат выходных данных, имя результирующего файла и параметр для архивирования выходных данных.
  • Загрузите входной документ Word в облачное хранилище с помощью объекта UploadFileRequest.
  • Теперь создайте экземпляр SplitDocumentRequest, передав данные, определенные на втором шаге.
  • Наконец, вызовите метод splitdocument(…) класса WordsApi для разделения документов Word. Полученные файлы сохраняются в сопоставленном облачном хранилище.
try:
        # создать экземпляр WordsApi
        words_api = WordsApi("88d1cda8-b12c-4a80-b1ad-c85ac483c5c5","406b404b2df649611e508bbcfcd2a77f")

        # Имя входного текстового документа
        inputFileName = 'source.doc'
        # результирующий формат файла
        resultantFormat = 'DOCX'
        # Имя результирующего документа после операции. Если этот параметр пропущен
        # то полученный файл будет сохранен с именем входного документа
        resultantFile = 'Split-File'
        # Флаг, указывающий, следует ли архивировать выходные данные.
        zipOutput = 'false'

        # Загрузите исходный документ Word в облачное хранилище
        words_api.upload_file(asposewordscloud.models.requests.UploadFileRequest(open('C:\\Users\\Downloads\\'+inputFileName, 'rb'), "", None))

        # Создать объект для разделения документа
        request = asposewordscloud.models.requests.SplitDocumentRequest(inputFileName, resultantFormat, None, None, None,
                                                                                    None, resultantFile,None, None, zipOutput, None)
        # инициировать операцию разделения слов
        result = words_api.split_document(request)
        
        # вывести сообщение в консоль (необязательно)
        print('Document Split process completed successfully !')    
    except ApiException as e:
        print("Exception while calling WordsApi: {0}".format(e))
Предварительный просмотр операции разделения документа

Изображение 3: Предварительный просмотр операции разделения документа.

Разделить документ на основе выбранных страниц

В этом разделе мы обсудим детали того, как разделить документ на основе выбранных страниц и сохранить вывод в виде архива ZIP. Фрагмент кода почти такой же, как представлен выше, за исключением того, что нам нужно указать Page From, Page To и True значение для вывода, который будет архивирован.

try:
        # создать экземпляр WordsApi
        words_api = WordsApi("88d1cda8-b12c-4a80-b1ad-c85ac483c5c5","406b404b2df649611e508bbcfcd2a77f")

        # Имя входного текстового документа
        inputFileName = 'source.doc'
        # результирующий формат файла
        resultantFormat = 'DOCX'
        # Имя результирующего документа после операции. Если этот параметр пропущен
        # то результирующий файл будет сохранен с именем входного документа
        resultantFile = 'SplitOutput'
        # Флаг, указывающий, что выходные данные должны быть в ZIP-архиве.
        zipOutput = 'false'

        # Загрузите исходный документ Word в облачное хранилище
        words_api.upload_file(asposewordscloud.models.requests.UploadFileRequest(open('C:\\Users\\Downloads\\'+inputFileName, 'rb'), "", None))

        # Создать объект для разделения документа
        request = asposewordscloud.models.requests.SplitDocumentRequest(inputFileName, resultantFormat, None, None, None,
                                                                                    None, resultantFile,pageFrom, pageTo, zipOutput, None)
        # инициировать операцию разделения слов
        result = words_api.split_document(request)
        
        # вывести сообщение в консоль (необязательно)
        print('Document Split process completed successfully !')    
    except ApiException as e:
        print("Exception while calling WordsApi: {0}".format(e))
Разделение документа на выходные данные

Изображение 4: Предварительный просмотр операции разделения документа для выбранных страниц.

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

Как и другие REST API, Aspose.Words Cloud также может быть доступен через команды cURL в терминале командной строки. Однако, прежде чем двигаться дальше, нам нужно сначала сгенерировать токен доступа JWT на основе учетных данных клиента.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

После генерации токена выполните следующую команду, чтобы извлечь страницы из документа Word и сохранить вывод в облачном хранилище.

curl -v -X PUT "https://api.aspose.cloud/v4.0/words/source.doc/split?format=DOCX&destFileName=Split-File&from=2&to=4&zipOutput=false" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>"

Заключение

В этой статье мы изучили возможность создания разделителя документов, который может разбить документ Word на отдельные файлы страниц с помощью Python SDK. Кроме того, в соответствии с вашими требованиями вы можете использовать Python SDK или извлекать страницы из документа Word с помощью команд cURL. Обратите внимание, что мы верим в коллективный рост и сотрудничество. Поэтому наши SDK разрабатываются в соответствии с лицензией MIT, а их полный исходный код доступен для загрузки через Github. При необходимости вы можете загрузить и изменить код в соответствии с вашими требованиями. Если у вас возникнут какие-либо проблемы или у вас появятся дополнительные вопросы, свяжитесь с нами через бесплатный форум поддержки продукта.

Похожие статьи

Мы рекомендуем вам посетить следующие ссылки, чтобы узнать больше о: