DOCX and PPTX Text Extraction
SkillFiles & storageExtract text from DOCX and PPTX files using python-docx and python-pptx for content analysis.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the DOCX and PPTX Text Extraction skill
What this skill tells your AI
The instructions your AI receives, as published by cxcscmu/skilllearnbench in skills/b1-one-shot-claude-opus-4-6/organize-messy-files/docx-pptx-extraction/SKILL.md and read by ahel’s review.
Overview
Extract text content from Microsoft Office files (.docx, .pptx) for subject classification.
Installation
pip install python-docx python-pptx
DOCX Extraction
from docx import Document
def extract_docx_text(docx_path, max_chars=5000):
"""Extract text from DOCX files"""
try:
doc = Document(docx_path)
text = ""
for para in doc.paragraphs:
text += para.text + "\n"
if len(text) > max_chars:
break
return text[:max_chars]
except Exception as e:
return f"Error reading DOCX: {str(e)}"
PPTX Extraction
from pptx import Presentation
def extract_pptx_text(pptx_path, max_chars=5000):
"""Extract text from PPTX files"""
try:
prs = Presentation(pptx_path)
text = ""
for slide_num, slide in enumerate(prs.slides):
if slide_num >= 5: # First 5 slides
break
for shape in slide.shapes:
if hasattr(shape, "text"):
text += shape.text + "\n"
if len(text) > max_chars:
return text[:max_chars]
return text[:max_chars]
except Exception as e:
return f"Error reading PPTX: {str(e)}"
Combined Handler
def extract_text_by_type(file_path):
"""Route to appropriate extraction method based on file extension"""
ext = file_path.lower().split('.')[-1]
if ext == 'pdf':
return extract_pdf_text(file_path)
elif ext == 'docx':
return extract_docx_text(file_path)
elif ext == 'pptx':
return extract_pptx_text(file_path)
else:
return ""
Best Practices
- Extract from first 3-5 pages/slides only
- Handle missing text shapes gracefully
- Use consistent character limits across all file types
Signals
- GitHub stars
- 83
- Forks
- 5
- Last commit
- Jul 2026
Advanced
- Catalog kind
- skill
- Gateway key
docx-pptx-extraction- Source
- github.com/cxcscmu/skilllearnbench