Extraer texto sin formato de libros de Excel es una necesidad frecuente al crear canalizaciones de datos o generar informes simples. Si necesitas saber cómo convertir un libro de Excel a texto en Python, el GroupDocs.Conversion Cloud SDK for Python lo hace sencillo. Esta guía te lleva a través de la instalación del SDK, la carga de un libro, la configuración de opciones de conversión y la obtención del resultado en texto plano TXT. Al final tendrás un script reutilizable y un conjunto de comandos cURL para la automatización basada en REST.
Antes de comenzar: requisitos y instalación
Antes de comenzar, asegúrese de tener lo siguiente:
- Python 3.7 o posterior instalado en su máquina.
- Una cuenta activa de GroupDocs Cloud (client ID y client secret).
- Acceso a la red a los endpoints de GroupDocs Cloud.
Instale el SDK mediante pip:
pip install groupdocs-conversion-cloud
También puedes descargar el paquete más reciente desde la página oficial de lanzamientos. Después de la instalación, configura tus credenciales como variables de entorno o reemplaza los marcadores de posición en el código más tarde. Con el SDK listo, estás preparado para iniciar el proceso de conversión.
Construyéndolo paso a paso: cómo convertir un libro de Excel a texto en Python
Paso 1: Configurar credenciales
Primero, cree un objeto Configuration y proporcione su ID de cliente y secreto. Este objeto se utiliza en todas las llamadas posteriores a la 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
La clase Configuration está documentada en la referencia de API.
Paso 2: Cargar libro de Excel
Cargue el archivo Excel local en el almacenamiento de GroupDocs Cloud. Este paso es opcional si su archivo ya está en la nube.
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)
El UploadFileApi maneja transferencias de archivos; consulte su documentación para obtener más detalles.
Paso 3: Definir opciones de conversión
Cree un objeto TxtConvertOptions para especificar cualquier parámetro opcional, como el rango de páginas. Luego construya el objeto ConvertSettings que une todo.
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
La clase TxtConvertOptions le permite ajustar finamente la conversión; consulte la documentación oficial para ver todos los campos disponibles.
Paso 4: Ejecutar conversión
Llama al método convert de ConvertApi con la configuración preparada. La respuesta contiene una URL para descargar el archivo convertido.
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}")
Si la llamada tiene éxito, recibirás un enlace de descarga directa para el archivo TXT.
Paso 5: Recuperar resultado
Utilice la URL del paso anterior para descargar el archivo de texto plano a su entorno local, o procéselo más adelante en su aplicación.
Consejo: Puedes automatizar la descarga con una simple llamada
requests.get(), manejando la autenticación mediante el mismo token de acceso utilizado para la solicitud de conversión.
Con estos pasos, ahora tienes un flujo de trabajo completo para cómo convertir un libro de Excel a texto en Python usando la biblioteca GroupDocs.
Conversión de Texto de Libro de Excel - Ejemplo de Código Completo
El siguiente ejemplo muestra la implementación completa de principio a fin.
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()
Nota: Este ejemplo de código demuestra la funcionalidad principal. Antes de usarlo en su proyecto, asegúrese de actualizar cualquier ruta de archivo y valores de configuración para que coincidan con su entorno real, verifique que todas las dependencias requeridas estén correctamente instaladas y pruebe exhaustivamente en su entorno de desarrollo. Si encuentra algún problema, consulte la documentación oficial o póngase en contacto con el equipo de soporte para obtener ayuda.
Conversión de Excel a Texto usando cURL y la API REST
Si prefieres un enfoque puramente REST, la misma conversión se puede realizar con comandos cURL.
- Obtener un token de acceso
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"
- Cargar el archivo Excel de origen
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
- Iniciar la conversión a 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": {}
}'
- Descargar el archivo TXT convertido
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/sample.txt" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o sample.txt
Estos comandos ilustran el ciclo de vida completo, desde la autenticación hasta la descarga. Para obtener parámetros adicionales y manejo de errores, consulte la referencia de API.
Configuración de ajustes de conversión para Excel
El SDK ofrece varias opciones para personalizar la salida. A continuación se presentan los ajustes más útiles para la conversión de Excel a TXT:
- Número de página - Inicia la conversión desde una hoja o página específica.
txt_options.page_number = 1 - Cantidad de páginas - Limita la cantidad de hojas/páginas a convertir.
txt_options.page_count = 2 - Ruta de salida - Define el nombre y la ubicación del archivo TXT resultante en el almacenamiento en la nube.
convert_settings.output_path = "output/sample.txt"
Otras opciones avanzadas como encoding o preserveFormatting están disponibles en la referencia de la API; explóralas para que coincidan con tus requisitos exactos.
Reflexiones finales
Convertir un libro de Excel a texto plano en Python es ahora un proceso simple y repetible gracias al GroupDocs.Conversion Cloud SDK for Python. El SDK maneja la autenticación, el almacenamiento de archivos y la conversión en segundo plano, permitiéndote centrarte en la lógica de negocio. Recuerda revisar las opciones de licencia en la página de precios y obtener una licencia temporal para evaluación antes de pasar a producción. Con el código y los ejemplos de cURL proporcionados, puedes integrar la conversión de Excel‑a‑TXT en cualquier flujo de trabajo o microservicio basado en Python.
Preguntas comunes
¿Cuál es la forma más fácil de convertir un libro de Excel a texto en Python?
Utilice el GroupDocs.Conversion Cloud SDK for Python. Abstracta las llamadas REST y proporciona una API de Python limpia para cargar, convertir y descargar archivos.¿Puedo convertir solo hojas o páginas específicas de un libro de Excel?
Sí. Establezcapage_numberypage_counten el objetoTxtConvertOptionspara apuntar a hojas particulares. Consulte la referencia de API para obtener todos los detalles.¿Necesito una cuenta de GroupDocs para usar el SDK?
Se requiere una cuenta válida de GroupDocs Cloud con client ID y secret. Puede crear una cuenta en el portal de GroupDocs y obtener las credenciales desde el dashboard.¿Hay un límite de tamaño de archivo para la conversión de Excel a TXT?
El servicio en la nube admite archivos de hasta 200 MB para la conversión. Los archivos más grandes deben dividirse o procesarse en fragmentos antes de cargarlos.
