Извлечение необработанного текста из книг Excel часто требуется при построении конвейеров данных или создании простых отчетов. Если вам нужно узнать как конвертировать книгу Excel в текст на Python, GroupDocs.Conversion Cloud SDK for Python делает это простым. Это руководство проведёт вас через установку SDK, загрузку книги, настройку параметров конвертации и получение простого результата в формате TXT. К концу вы получите переиспользуемый скрипт и набор команд cURL для автоматизации на основе REST.

Прежде чем начать: Предварительные требования и установка

Прежде чем начать, убедитесь, что у вас есть следующее:

  • Python 3.7 или новее, установленный на вашем компьютере.
  • Активный аккаунт GroupDocs Cloud (client ID и client secret).
  • Сетевой доступ к конечным точкам GroupDocs Cloud.

Установите SDK с помощью pip:

pip install groupdocs-conversion-cloud

Вы также можете загрузить последнюю версию пакета со страницы официального релиза. После установки задайте свои учётные данные как переменные окружения или позже замените заполнители в коде. С готовым SDK вы готовы начать процесс конвертации.

Создание пошагово: Как преобразовать книгу Excel в текст с помощью Python

Шаг 1: Настройка учетных данных

Сначала создайте объект Configuration и укажите ваш client ID и secret. Этот объект используется всеми последующими вызовами API.

import os
from groupdocs_conversion_cloud import Configuration

client_id = os.getenv("GROUPDOCS_CLIENT_ID", "YOUR_CLIENT_ID")
client_secret = os.getenv("GROUPDOCS_CLIENT_SECRET", "YOUR_CLIENT_SECRET")

config = Configuration()
config.client_id = client_id
config.client_secret = client_secret

Класс Configuration задокументирован в справочнике API.

Шаг 2: Загрузить рабочую книгу Excel

Загрузите локальный файл Excel в хранилище GroupDocs Cloud. Этот шаг необязателен, если ваш файл уже находится в облаке.

from groupdocs_conversion_cloud import ApiClient, UploadFileApi, UploadFileRequest

api_client = ApiClient(config)
upload_api = UploadFileApi(api_client)

local_excel_path = "sample.xlsx"
remote_excel_path = "sample.xlsx"

with open(local_excel_path, "rb") as f:
    upload_request = UploadFileRequest(
        path=remote_excel_path,
        file=f.read()
    )
    upload_api.upload_file(upload_request)

UploadFileApi обрабатывает передачу файлов; см. его документацию для получения более подробной информации.

Шаг 3: Определить параметры конвертации

Создайте объект TxtConvertOptions, чтобы указать любые необязательные параметры, такие как диапазон страниц. Затем создайте объект ConvertSettings, который связывает всё вместе.

from groupdocs_conversion_cloud import (
    FileInfo,
    TxtConvertOptions,
    ConvertSettings,
)

file_info = FileInfo()
file_info.file_path = remote_excel_path

txt_options = TxtConvertOptions()
# txt_options.page_number = 1   # Uncomment to start from a specific page
# txt_options.page_count = 1    # Uncomment to limit the number of pages

convert_settings = ConvertSettings()
convert_settings.file_info = file_info
convert_settings.format = "txt"
convert_settings.output_path = "sample.txt"
convert_settings.options = txt_options

Класс TxtConvertOptions позволяет точно настроить преобразование; обратитесь к официальной документации для получения всех доступных полей.

Шаг 4: Выполнить конвертацию

Вызовите метод convert объекта ConvertApi с подготовленными настройками. Ответ содержит URL для загрузки преобразованного файла.

from groupdocs_conversion_cloud import ConvertApi, ApiException

convert_api = ConvertApi(api_client)

try:
    conversion_result = convert_api.convert(convert_settings)
    print(f"Conversion succeeded. Download URL: {conversion_result.url}")
except ApiException as e:
    print(f"Conversion failed: {e}")

Если вызов выполнен успешно, вы получите прямую ссылку для загрузки файла TXT.

Шаг 5: Получить результат

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

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

С этими шагами у вас теперь есть полный рабочий процесс как преобразовать книгу Excel в текст на Python с использованием библиотеки GroupDocs.

Преобразование текста в рабочей книге Excel — полный пример кода

Следующий пример демонстрирует полную реализацию от начала до конца.

import os
from groupdocs_conversion_cloud import (
    Configuration,
    ApiClient,
    UploadFileApi,
    UploadFileRequest,
    ConvertApi,
    ConvertSettings,
    FileInfo,
    TxtConvertOptions,
    ApiException,
)

def main():
    # ----------------------------------------------------------------------
    # 1. Configure credentials (replace placeholders or set env variables)
    # ----------------------------------------------------------------------
    client_id = os.getenv("GROUPDOCS_CLIENT_ID", "YOUR_CLIENT_ID")
    client_secret = os.getenv("GROUPDOCS_CLIENT_SECRET", "YOUR_CLIENT_SECRET")

config = Configuration()
    config.client_id = client_id
    config.client_secret = client_secret

api_client = ApiClient(config)

# ----------------------------------------------------------------------
    # 2. Upload local Excel workbook to GroupDocs Cloud storage (optional)
    # ----------------------------------------------------------------------
    local_excel_path = "sample.xlsx"          # path to the Excel file on your machine
    remote_excel_path = "sample.xlsx"         # path where the file will be stored in the cloud

upload_api = UploadFileApi(api_client)
    try:
        with open(local_excel_path, "rb") as f:
            upload_request = UploadFileRequest(
                path=remote_excel_path,
                file=f.read()
            )
            upload_api.upload_file(upload_request)
        print(f"Uploaded '{local_excel_path}' to cloud storage as '{remote_excel_path}'.")
    except (ApiException, IOError) as e:
        print(f"Failed to upload file: {e}")
        return

# ----------------------------------------------------------------------
    # 3. Prepare conversion settings to transform Excel → plain text
    # ----------------------------------------------------------------------
    convert_api = ConvertApi(api_client)

file_info = FileInfo()
    file_info.file_path = remote_excel_path          # source file in cloud storage

txt_options = TxtConvertOptions()
    # (optional) you can limit conversion to specific pages:
    # txt_options.page_number = 1
    # txt_options.page_count = 1

convert_settings = ConvertSettings()
    convert_settings.file_info = file_info
    convert_settings.format = "txt"                  # target format
    convert_settings.output_path = "sample.txt"      # result file name in cloud storage
    convert_settings.options = txt_options

# ----------------------------------------------------------------------
    # 4. Execute conversion
    # ----------------------------------------------------------------------
    try:
        conversion_result = convert_api.convert(convert_settings)
        # The result contains a URL to download the converted file
        print(f"Conversion succeeded. Download URL: {conversion_result.url}")
    except ApiException as e:
        print(f"Conversion failed: {e}")

if __name__ == "__main__":
    main()

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

Преобразование Excel в текст с использованием cURL и REST API

Если вы предпочитаете чистый REST‑подход, то ту же конверсию можно выполнить с помощью команд cURL.

  1. Получить токен доступа
curl -X POST "https://api.groupdocs.cloud/v2.0/connect/token" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. Загрузите исходный файл Excel
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/sample.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary @sample.xlsx
  1. Начните преобразование в TXT
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "fileInfo": { "filePath": "sample.xlsx" },
           "format": "txt",
           "outputPath": "sample.txt",
           "options": {}
         }'
  1. Скачать преобразованный файл TXT
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/sample.txt" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o sample.txt

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

Настройка параметров конвертации для Excel

SDK предлагает несколько вариантов настройки вывода. Ниже перечислены наиболее полезные параметры для преобразования Excel‑to‑TXT.

  • Номер страницы - Начать конвертацию с конкретного листа или страницы.
    txt_options.page_number = 1
    
  • Количество страниц - Ограничить количество листов/страниц для конвертации.
    txt_options.page_count = 2
    
  • Путь вывода - Задать имя и расположение результирующего TXT‑файла в облачном хранилище.
    convert_settings.output_path = "output/sample.txt"
    

Другие расширенные параметры, такие как encoding или preserveFormatting, доступны в справочнике API; изучите их, чтобы соответствовать вашим точным требованиям.

Заключительные мысли

Конвертация книги Excel в обычный текст в Python теперь стала простым, повторяемым процессом благодаря GroupDocs.Conversion Cloud SDK for Python. SDK обрабатывает аутентификацию, хранение файлов и конвертацию в фоновом режиме, позволяя вам сосредоточиться на бизнес‑логике. Не забудьте ознакомиться с вариантами лицензирования на странице цен и получить временную лицензию для оценки перед переходом в продакшн. С предоставленными примерами кода и cURL вы можете интегрировать конвертацию Excel‑в‑TXT в любой рабочий процесс или микросервис на Python.

Общие вопросы

  • Какой самый простой способ конвертировать книгу Excel в текст на Python?
    Используйте GroupDocs.Conversion Cloud SDK for Python. Он абстрагирует REST‑вызовы и предоставляет чистый Python‑ориентированный API для загрузки, конвертации и скачивания файлов.

  • Могу ли я конвертировать только определённые листы или страницы Excel‑книги?
    Да. Установите page_number и page_count в объекте TxtConvertOptions, чтобы выбрать конкретные листы. См. справку API для получения полной информации.

  • Нужен ли мне аккаунт GroupDocs для использования SDK?
    Требуется действующий аккаунт GroupDocs Cloud с client ID и secret. Вы можете создать аккаунт на портале GroupDocs и получить учетные данные с dashboard.

  • Есть ли ограничение по размеру файла при конвертации Excel в TXT?
    Облачный сервис поддерживает файлы размером до 200 МБ для конвертации. Большие файлы следует разбивать или обрабатывать частями перед загрузкой.

Дополнительное чтение