En varios escenarios, el texto se extrae de los documentos para su posterior procesamiento, como análisis de texto, clasificación, etc. Entre otros documentos como PDF y Word, los archivos de PowerPoint también se utilizan en la extracción de texto. Por lo tanto, este artículo tiene como objetivo mostrarle cómo extraer texto de archivos de PowerPoint en Python. Cubriremos cómo extraer texto de una diapositiva específica o de toda la presentación.
- Biblioteca de Python para extraer texto de archivos de PowerPoint
- Extraer texto de archivos de PowerPoint
Biblioteca de Python para extraer texto de archivos de PowerPoint
Para extraer texto de archivos de PowerPoint, usaremos Aspose.Slides for Python via .NET. Es una biblioteca de Python rica en funciones para crear y actualizar presentaciones de PowerPoint. Además, le permite manipular y convertir las presentaciones sin problemas. Puede instalar esta biblioteca desde PyPI usando el siguiente comando pip.
> pip install aspose.slides
Extraer texto de archivos de PowerPoint en Python
Según el escenario, es posible que deba extraer texto de toda la presentación de PowerPoint o de algunas diapositivas específicas. En las siguientes secciones, demostraremos cómo realizar la extracción de texto en los dos casos mencionados anteriormente. Así que procedamos.
Extraer texto de una diapositiva específica
Los siguientes son los pasos para extraer texto de una diapositiva específica en PPT en Python.
Primero, use el método PresentationFactory().get_presentation\text(string, TextExtractionArrangingMode) para obtener todos los tipos de texto en la presentación.
Después de eso, use el índice para extraer el texto de una diapositiva específica de la matriz diapositivas\texto.
Los siguientes son los tipos de texto que puede extraer:
Texto de la diapositiva
notas
Texto de diseño de diapositiva
Texto patrón de diapositivas
El siguiente ejemplo de código muestra cómo extraer texto de una diapositiva PPT específica en Python.
import aspose.slides as slides
# Get all the text from presentation
text = slides.PresentationFactory().get_presentation_text("presentation.pptx", slides.TextExtractionArrangingMode.UNARRANGED)
# Print text of the desired slide using its index
print(text.slides_text[0].text)
print(text.slides_text[0].layout_text)
print(text.slides_text[0].master_text)
print(text.slides_text[0].notes_text)
Extracción de texto de todo el archivo de PowerPoint en Python
Los siguientes pasos demuestran cómo extraer texto de todas las diapositivas de una presentación de PowerPoint.
- Primero, use el método PresentationFactory().get_presentation\text(string, TextExtractionArrangingMode) para obtener todos los tipos de texto en la presentación.
- Cargar presentación en un objeto Presentation.
- Iterar a través del número de diapositivas en la presentación.
- Extrae el texto de cada diapositiva usando slides\text array.
El siguiente ejemplo de código muestra cómo extraer texto de un archivo PPTX (o PPT) en Python.
import aspose.slides as slides
# Get all the text from presentation
text = slides.PresentationFactory().get_presentation_text("presentation.pptx", slides.TextExtractionArrangingMode.UNARRANGED)
# Load the presentation to get slide count
with slides.Presentation("presentation.pptx") as ppt:
# Loop through slides in the presentation
for index in range(ppt.slides.length):
# Print text of desired sections such as slide's text, layout text, notes, etc.
print(text.slides_text[index].text)
print(text.slides_text[index].layout_text)
print(text.slides_text[index].master_text)
print(text.slides_text[index].notes_text)
Obtenga una licencia gratis
Puede usar Aspose.Slides for Python a través de .NET sin limitaciones de evaluación al obtener una licencia temporal.
Conclusión
En este artículo, ha aprendido a extraer texto de archivos de PowerPoint en Python. Ha visto cómo extraer texto de una diapositiva específica o de todas las diapositivas de una presentación de PowerPoint. Además, puede explorar otras características de Aspose.Slides for Python utilizando la documentación. Además, puede compartir sus consultas con nosotros a través de nuestro foro.