ragflow/deepdoc/parser
hsparks.codes e2404d728b feat: Add image extraction capability to Excel parser
Implements image extraction from Excel files with metadata.

Features:
- Extract embedded images from all sheets in Excel workbook
- Capture image metadata: format, position (anchor cell), description, size
- Base64 encode images for easy storage and transmission
- Support multiple image formats (PNG, JPEG, GIF, BMP, etc.)
- Handle images across multiple sheets
- Include comprehensive unit tests (6 tests, all passing)

Implementation:
- Add extract_images() method to RAGFlowExcelParser
- Use openpyxl's built-in image handling (_images property)
- Convert column numbers to Excel letters (A, B, AA, etc.)
- Extract alt text/descriptions when available
- Return structured image data with position information

Tests:
- test_extract_images_from_excel: Basic extraction
- test_extract_images_from_excel_without_images: Empty file handling
- test_extract_images_multiple_sheets: Multi-sheet support
- test_column_letter_conversion: Position calculation
- test_extract_images_with_description: Metadata extraction
- test_extract_images_with_size: Size information

Fixes #11618
2025-12-03 11:51:07 +01:00
..
resume Fix: resolve regex library warnings (#7782) 2025-05-22 10:06:28 +08:00
__init__.py Feat: advanced markdown parsing (#9607) 2025-08-21 09:36:18 +08:00
docling_parser.py Feat: add more chunking method (#11413) 2025-11-20 19:07:17 +08:00
docx_parser.py Refactor parser code (#9042) 2025-07-25 12:04:07 +08:00
excel_parser.py feat: Add image extraction capability to Excel parser 2025-12-03 11:51:07 +01:00
figure_parser.py Refa: rm useless code. (#11238) 2025-11-13 09:59:55 +08:00
html_parser.py Fix issue where HTML file parsing may lose content. (#11536) 2025-11-27 09:40:10 +08:00
json_parser.py Feat: parsing supports jsonl or ldjson format (#9087) 2025-07-30 09:48:20 +08:00
markdown_parser.py Fix: incorrect image merging for naive markdown parser (#11520) 2025-11-25 19:54:06 +08:00
mineru_parser.py Fix: [MinerU] Missing output file (#11623) 2025-12-01 12:17:43 +08:00
pdf_parser.py Feat:new component Loop (#11447) 2025-11-27 15:55:32 +08:00
ppt_parser.py fix "TypeError: '<' not supported between instances of 'Emu' and 'Non… (#9209) 2025-08-04 16:07:03 +08:00
tcadp_parser.py Feat: Add TCADP parser for PPTX and spreadsheet document types. (#11041) 2025-11-20 10:08:42 +08:00
txt_parser.py Move token related functions to common (#10942) 2025-11-03 08:50:05 +08:00
utils.py Update comments (#4569) 2025-01-21 20:52:28 +08:00