小票明细表格生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_b687eed0/execl。
技能介绍
要解决的问题
超市购物小票是典型的非结构化数据:宽度不一、字体小、字段靠右对齐,促销价和零售价并存,称重商品的数量还是一大串克重数字。人工录入到 Excel 既慢又容易出错,尤其是遇到退货行和手写清单时更麻烦。这个技能负责把小票图片直接变成格式统一的表格,省掉手工对照的环节。
技能如何工作
核心流程分四步:
- 读取图片:直接解析图片中可见的文本行,不做 OCR 引擎层面的二次封装。
- 字段识别与单位统一:按
品名 / 单价 / 数量 / 金额的顺序提取列。数量若以克显示(如19734),自动换算成千克(1.9734);若已经是千克或件数则原样保留。 - 价格规则处理:小票同时出现促销价和零售价时取较低者;小票本身带独立单价列(如夏商民兴小票)时直接使用该列。
- 生成并格式化 Excel:用
openpyxl写入表头和数据行,表头加粗、白字、蓝底、居中,数字列右对齐并保留两位小数,品名列左对齐并自适应列宽。
特殊场景也有明确处理方式:负数量或负金额的退货行按原样写入,不做取绝对值之类的「美化」;手写销售清单按表头列名直接读取,无法辨认的字段会在结果中标注不确定性并提示用户确认。
适用边界与注意点
- 价格单位按小票标注的
元/千克或元/件理解,金额单位为元,技能不会替你切换单位体系。 - 小票缺少某一列时(如没有促销价),对应单元格留空而非填零。
- 图片模糊、折叠或字迹无法识别时,技能会列出不确定项并告知用户,而不是硬猜一个值。
- 文件输出到用户当前选择的工作目录,命名为
小票明细.xlsx;同名时自动递增为小票明细_2.xlsx等,保证不覆盖已有文件。
使用场景
- 财务做月度报销时上传多张超市购物小票照片,需按品名、单价、数量、金额提取明细,称重商品克重自动换算为千克,促销价低于零售价时取促销价。
- 零售店主整理多张进货小票,其中包含手写销售清单和电子小票,需识别手写清单的品名及规格、数量、单价、金额列,退货行数量与金额均保持负数。
- 电商商家从多张超市小票照片中批量提取商品明细,部分小票无促销价部分带独立单价列,生成 Excel 后若文件已存在自动递增命名避免覆盖。
适合人员
- 财务 / 会计:每周要把一堆纸质购物小票快速转成 Excel 用于记账和费用报销,需要小票上克重数量自动换算、促销价按规则选择、输出文件不覆盖已有表格。
- 零售 / 个体户店主:每天进货都会收到一批小票,想把它们整理成统一格式的商品明细表用于月度成本统计,需要识别手写销售清单和退货行并按原样保留负值。
- 在飞书多维表格或在线协作文档中汇总多来源票据数据的用户:拿到技能生成的小票明细.xlsx 后上传至协同文档,与系统导出或其他手工录入的行合并成完整台账。
- 经常处理多个商超不同版式小票的财务人员:希望一套识别逻辑同时处理称重行、退货行和手写清单,减少对不同小票格式反复调整模板的成本。