ppt-analysis
PPT (.pptx/.ppt) 全量解析。覆盖:所有 slide 文本/表格/图表提取、嵌入图片 caption、纯图片 slide 渲染识别、数据标签提取。
npx skills add OpenSenseNova/SenseNova-Skills --skill ppt-analysis --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# PPT Analysis — .pptx / .ppt ## Environment ```python from pptx import Presentation from pptx.util import Inches import os, subprocess, json # python-pptx is available # For .ppt (old binary format): convert via libreoffice def load_pptx(path): if path.lower().endswith('.ppt'): import subprocess out_dir = os.path.dirname(path) subprocess.run( ['libreoffice', '--headless', '--convert-to', 'pptx', '--outdir', out_dir, path], check=True, capture_output=True ) path = path.rsplit('.', 1)[0] + '.pptx' return Presentation(path), path ``` --- ## Core Method 1: Full Text Extraction (ALL slides) ```python def extract_all_slides_text(pptx_path): """ Extract text from every slide: text frames, tables, chart titles. For slides with no extractable text, flag them for image captioning. """ prs, _ = load_pptx(pptx_path) slides_data = [] for slide_num, slide in enumerate(prs.slides, start=1): slide_texts = [] has_text = False for shape in slide.shapes: # Text frame (most common) if shape.has_text_frame: for para in shape.text_frame.paragraphs: text = para.text.strip() if text: slide_texts.append(text) has_text = True # Table if shape.has_table: tbl = shape.table for row in tbl.rows: row_text = '\t
- Environment
- Core Method 1: Full Text Extraction (ALL slides)
- Core Method 2: Table Extraction (Structured)
- Core Method 3: Chart Data Extraction
- Core Method 4: Render Image-Only Slides → Caption
- Common Patterns
- Keyword search across all slides
- Time-line / process extraction from PPT
- Statistics from PPT tables (e.g., 录用占比)
- Full Workflow Example
- Pitfalls
What does the ppt-analysis skill do?
PPT (.pptx/.ppt) 全量解析。覆盖:所有 slide 文本/表格/图表提取、嵌入图片 caption、纯图片 slide 渲染识别、数据标签提取。
How do I install it?
Run `npx skills add OpenSenseNova/SenseNova-Skills --skill ppt-analysis --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From OpenSenseNova/SenseNova-Skills, a repository with 4,855 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
