图片转Excel

Polar Sponsor
爱发电 赞助
.NET 9.0

从图片中提取表格数据并生成Excel文件。当用户提供截图、照片或扫描件中的表格数据,要求转成Excel/xlsx时触发。支持多张图片批量提取,自动识别列结构,数值类型自动识别(Excel可直接计算)。触发词:图片转Excel、截图转表格、图片提取数据、图片转xlsx、image to xlsx、screenshot to spreadsheet。

图片转Excel (Image to XLSX)

功能概述

图片转Excel (Image to XLSX)是一项面向实际任务的技能,主要用于从用户提供的图片中提取表格/列表数据,生成标准 .xlsx 文件;适用于 CRM 截图、报表截图、客户名单照片等场景;

核心要点

  • 零第三方依赖 — 纯 Python 标准库(zipfile + json + tempfile),无需安装 openpyxl、pandas 等;
  • v2.0 升级 :;
  • 数值自动识别为数字类型(非文本),Excel 可直接。

使用与执行

它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

图片转Excel (Image to XLSX)

概述

从用户提供的图片中提取表格/列表数据,生成标准 .xlsx 文件。适用于 CRM 截图、报表截图、客户名单照片等场景。

零第三方依赖 — 纯 Python 标准库(zipfile + json + tempfile),无需安装 openpyxl、pandas 等。

v2.0 升级:

  • 数值自动识别为数字类型(非文本),Excel 可直接 SUM/AVG/IF
  • 支持多工作表(multi-sheet)
  • 输入容错:空数据、短行、None 值、非法 JSON 均有优雅处理

触发条件

  • 用户提供1张或多张包含表格/列表数据的图片
  • 要求输出为 Excel/xlsx 格式
  • 典型表述:"把这些图片里的内容生成Excel"、"截图转表格"、"图片数据提取"

完整工作流

Step 1: 读取所有图片,提取数据

  1. 逐张 Read 读取图片文件,用视觉能力识别表格内容
  2. 按图片顺序和图片内行顺序,提取每行数据
  3. 确定列名(用户指定,或从图片表头推断)

Step 2: 生成 JSON 数据文件

将提取的数据写成 JSON 文件。

单工作表格式:

{
    "sheet_name": "客户列表",
    "freeze_header": true,
    "headers": ["序号", "客户ID", "客户姓名", "当前跟进人"],
    "columns": [
        {"name": "序号", "width": 8},
        {"name": "客户ID", "width": 12},
        {"name": "客户姓名", "width": 16},
        {"name": "当前跟进人", "width": 14}
    ],
    "data": [
        [1, 61459, "魏国祥", "赵巍"],
        [2, 77780, "戴慧敏", "赵巍"]
    ]
}

多工作表格式:

{
    "sheets": [
        {
            "sheet_name": "客户列表",
            "headers": ["序号", "姓名", "金额"],
            "data": [[1, "张三", 5800.50]]
        },
        {
            "sheet_name": "订单明细",
            "headers": ["订单号", "状态"],
            "data": [["ORD-001", "已付款"]]
        }
    ]
}

字段说明:

  • sheet_name: 工作表名称,可选,默认 "Sheet1"
  • freeze_header: 是否冻结首行,可选,默认 true
  • headers: 列名列表,必填
  • columns: 列宽配置,可选,默认全部 width=12
  • data: 二维数组,每行对应一行数据,必填(可为空数组)
  • sheets: 多工作表数组,每个元素包含上述字段

数值类型规则(自动识别,无需手动标记):

  • 整数(int 或 "123" 样字符串)→ Excel 数字格式 #,##0
  • 小数(float 或 "1.5" 样字符串)→ Excel 数字格式 #,##0.00
  • 文本(含中文/字母等)→ Excel 文本格式
  • null / None → 空单元格

JSON 文件保存到临时目录。

Step 3: 运行 build_xlsx.py 生成 xlsx

python SKILL_DIR/scripts/build_xlsx.py  

SKILL_DIR 为本 Skill 的安装目录。Windows 环境需加 PYTHONUTF8=1: PYTHONUTF8=1 python SKILL_DIR/scripts/build_xlsx.py

输出路径默认保存到当前工作目录下,文件名由用户指定或自动命名。

Step 4: 验证并交付

用 zipfile 快速验证生成的 xlsx:

python -c "
import zipfile, xml.etree.ElementTree as ET
z = zipfile.ZipFile('')
ns = {'m': 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'}
with z.open('xl/worksheets/sheet1.xml') as f:
    rows = ET.parse(f).findall('.//m:row', ns)
    print(f'Rows: {len(rows)} (1 header + {len(rows)-1} data)')
print('XLSX valid!')
"

验证通过后用 present_files 交付给用户。

重要注意事项

  1. Windows 环境加 PYTHONUTF8=1:Python 默认用系统编码,不加此变量中文可能乱码
  2. 数值自动识别为数字类型:整数和小数会自动写入为 Excel 数字格式(非文本),可做 SUM/AVG/IF 等计算;文本内容仍为文本格式
  3. 支持多工作表:通过 sheets 数组可生成包含多个 sheet 的 xlsx
  4. 输入容错:空数据生成仅含表头的文件;行数据比表头短/长自动截断/跳过;None 值生成空单元格;缺失 headers 报错提示
  5. 支持超过 26 列:内置 AA、AB... 列名计算,支持任意列数
  6. 列宽可自定义:通过 columns 字段指定,不指定则默认 12
  7. 临时文件自动清理:build_xlsx.py 在工作目录生成 XML 后自动删除

脚本路径

  • scripts/build_xlsx.py — 核心生成脚本,接收 JSON 输入,输出 xlsx

Python 依赖

  • 无第三方依赖(纯标准库 zipfile + tempfile + json + re)
  • Python 3.8+ 即可运行

相关专题

更多
Excel制作交互图表的方法 Excel交互式的图表教程大全
Excel制作交互图表的方法 Excel交互式的图表教程大全

Excel交互式图表可通过四种方法实现:一、用切片器控制数据透视图;二、结合下拉列表与INDEX-MATCH动态引用;三、用选项按钮绑定图表系列;四、利用动态命名区域配合OFFSET函数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2026.01.04

1820

12

excel制作动态图表教程
excel制作动态图表教程

本专题整合了excel制作动态图表相关教程,阅读专题下面的文章了解更多详细教程。

2025.12.29

205

12

Excel图表制作全流程
Excel图表制作全流程

本专题整合了excel制作图表的相关教程,阅读专题下面的文章了解更多详细内容。

2025.12.23

240

7

excel xls与xlsx的区别
excel xls与xlsx的区别

本专题整合了excel中xls与xlsx的区别,阅读专题下面的文章了解更多详细内容。

2025.12.23

357

10

excel 绝对值
excel 绝对值

本专题整合了excel绝对值相关教程,阅读专题下面的文章了解更多详细内容。

2025.12.09

839

10

Excel如何制作一个动态交互式图表
Excel如何制作一个动态交互式图表

首先通过准备数据源并创建基础图表,再插入表单控件实现用户交互,接着使用INDEX公式提取对应数据,然后将图表数据源指向动态区域,最后优化布局与标题实现动态更新。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.11.28

1738

9

excel算方差教程
excel算方差教程

计算方差的步骤依次为:1. 计算平均值;2. 计算差异的平方;3. 求和平方值;4. 除以数据点数。想要了解更多相关内容,请阅读专题下面的文章。

2025.05.27

4049

13

怎么用excel制作标签
怎么用excel制作标签

用 Excel 制作标签,若为普通工作表标签,可右键单击标签选 “重命名” 来修改名称;选 “标签颜色” 设置颜色用于区分。若制作数据标签,比如地址标签,先在 Excel 整理好数据,再借助 Word 的邮件合并功能。在 Word 中依次操作:“邮件” 选项卡→“开始邮件合并”→“标签”,选好标签类型,导入 Excel 数据并设置格式,完成后打印 。

2025.04.14

6551

9

excel提取想要的数据
excel提取想要的数据

提取方法有很多种。直接定位:使用“定位”功能选择所需数据。筛选:根据条件筛选数据,显示满足条件的单元格。条件格式:突出显示满足特定条件的数据单元格。高级筛选:指定条件,将提取的数据粘贴到目标范围。公式:使用 index、if、sumif、countif 等函数从数据中提取值。vba 宏:编写脚本以自动提取数据,满足特定条件。

2025.01.08

5430

13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 44.3万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.6万人学习