3

Как извлечь текст и изображения из файлов PowerPoint с помощью Python

Извлечение содержимого из PowerPoint может сделать информацию более доступной для тех, кто предпочитает другие форматы или нуждается в её интеграции в другие приложения. В этой статье я расскажу, как извлечь текст и изображения из презентаций PowerPoint с использованием бесплатной библиотеки для работы с презентациями на Python.

Библиотека Python для извлечения содержимого из PowerPoint

Free Spire.Presentation for Python — это мощная библиотека, позволяющая разработчикам программно создавать, читать, редактировать и манипулировать файлами PowerPoint. Одна из её ключевых возможностей — извлечение текста и изображений из презентаций, что позволяет эффективно извлекать и повторно использовать контент без необходимости ручного просмотра слайдов.

Чтобы начать работу с Free Spire.Presentation, установите её через PyPI с помощью следующей команды:

pip install spire.presentation.free

Извлечение текста из документа PowerPoint

С помощью Free Spire.Presentation можно получить доступ к конкретному слайду через свойство Presentation.Slides[index]. Затем нужно перебрать фигуры на слайде и проверить, является ли каждая из них экземпляром класса IAutoShape (что указывает на наличие текстового блока).

Если фигура содержит текст, можно получить абзацы внутри неё и последовательно извлечь текст из каждого. Чтобы извлечь весь текст из файла PowerPoint, достаточно перебрать все слайды и обработать каждый из них.

Вот пример кода для извлечения всего текста из презентации:

from spire.presentation import *

from spire.presentation.common import *

# Создаем объект класса Presentation

presentation = Presentation()

# Загружаем презентацию PowerPoint

presentation.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.pptx")

# Создаем список для хранения текста

text = []

# Перебираем слайды в документе

for slide in presentation.Slides:

# Перебираем фигуры на слайде

for shape in slide.Shapes:

# Проверяем, является ли фигура объектом IAutoShape

if isinstance(shape, IAutoShape):

# Перебираем абзацы в фигуре

for paragraph in shape.TextFrame.Paragraphs:

# Добавляем текст абзаца в список

text.append(paragraph.Text)

# Записываем текст в файл

with open("output/ExtractAllText.txt", "w", encoding='utf-8') as f:

for s in text:

f.write(s + "\n")

# Освобождаем ресурсы

presentation.Dispose()

Извлечение изображений из файла PowerPoint

Свойство Presentation.Images возвращает список всех изображений, встроенных в документ. Перебирая этот список, можно сохранить каждое изображение в формате PNG с помощью метода Image.Save.

Пример извлечения всех изображений из PowerPoint:

from spire.presentation.common import *

from spire.presentation import *

# Создаем объект Presentation

presentation = Presentation()

# Загружаем документ PowerPoint

presentation.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.pptx")

# Получаем изображения из документа

images = presentation.Images

# Перебираем изображения

for i, image in enumerate(images):

# Сохраняем каждое изображение в указанном пути

image_name = f"Output/Images_{i}.png"

image.Image.Save(image_name)

# Освобождаем ресурсы

presentation.Dispose()

Заключение

В этой статье мы рассмотрели различные методы извлечения текста, таблиц и изображений из отдельных слайдов или всей презентации с помощью Python. Используя эти техники, вы сможете оптимизировать свою работу и эффективно использовать материалы PowerPoint!

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества