当前位置: 首页 > news >正文

效率爆炸!我用 Python + DeepSeek 写了个“能听懂人话”的 OCR 神器

还在手动敲表格?还在为截图里的数据抓狂?
今天给大家分享一个我刚刚撸出来的 Python 神器——智能 OCR 表格提取助手。它不仅能一键把图片变 Excel,更厉害的是,它接入了DeepSeek V3,能自动帮你补全数据!


🔥 核心痛点,一键解决

作为一名经常和数据打交道的打工人,我最烦的就是:

  1. 截图转表格:对方发来一张截图,让我做成 Excel,几百行数据敲到手断。

  2. 表头乱飞:普通 OCR 识别出来全是散的,表头和数据混在一起,排序一按全乱了。

  3. 数据缺失:表格里只有“某某基金”,领导非要我填上“基金代码”,我又得一个个去百度。

于是,这个工具诞生了!


✨ 四大杀手级功能

1. 🖼️ 图片秒变可编辑表格

依托RapidOCR引擎,识别速度飞快。识别后的文字直接变成一个类似 Excel 的界面,双击就能改,右键就能删

2. 🔒 独创“表头/标题锁定”技术

这是市面上很多免费 OCR 工具都没有的细节!

  • 一键锁定表头:右键“将首行设为表头”,排序时它纹丝不动。
  • 智能识别标题:支持“标题+表头”双重锁定,完美还原复杂报表结构。

3. 🤖 DeepSeek AI 智能补全(王炸功能)

这是最硬核的地方!如果你的表格里有“基金名称”或者“公司名”,但缺少代码:

  • 选中那一列。
  • 右键点击DeepSeek: 智能补全基金代码
  • 见证奇迹:AI 会自动联网查询,并直接在表格里帮你插入一列新的代码

4. 📤 格式完美导出

所见即所得,你调整好的表格,直接导出为 Excel,连标题和列宽都给你安排得明明白白。


💻 核心代码大赏

不仅要好用,还要硬核。看看这几行代码,你就知道它为什么这么强。

📌 1. DeepSeek 深度集成 (AI Worker)

我们利用QThread实现了异步 AI 调用,界面不卡顿,体验丝般顺滑。

classDeepSeekWorker(QThread):finished=pyqtSignal(dict)defrun(self):# 直接调用 DeepSeek 官方 APIclient=OpenAI(api_key=self.api_key,base_url="https://api.deepseek.com")# 精心设计的 Prompt,强制输出 JSON 格式,方便程序解析prompt=f""" 你是一个专业的金融数据助手。请根据以下基金名称列表,查找并返回对应的中国基金代码。 要求:返回结果必须是严格的 JSON 格式 (Key: 名称, Value: 代码)。 列表:{json.dumps(self.fund_names,ensure_ascii=False)}"""response=client.chat.completions.create(model="deepseek-chat",messages=[{"role":"user","content":prompt}],stream=False)# 解析结果并回传给主界面self.finished.emit(json.loads(response.choices[0].message.content))

📌 2. 智能行列重组算法

普通的 OCR 只会给你一堆坐标,我们写了个算法,把它们“拼”回表格。

defsmart_merge_lines(self,result):# 先按 Y 轴聚类,判断是否在同一行# 再按 X 轴排序,还原列顺序boxes.sort(key=lambdab:b["cy"])# ... (省略中间复杂的几何计算) ...ifabs(box["cy"]-last_box["cy"])<avg_h*0.6:current_row.append(box)# 归为同一行# ...returnfinal_rows

🏆 为什么选择它?

  • 隐私安全:OCR 识别完全在本地运行,你的财务报表图片不会上传到任何云端(除非你主动点击 DeepSeek 查询)。
  • 极致轻量:基于 PyQt5 开发,启动秒开,不像 Electron 应用那样吃内存。
  • 无限扩展:今天它可以补全基金代码,明天改改 Prompt,它就能补全“英文翻译”、“股票市盈率”或者“公司地址”!

💡 总结:这不仅仅是一个 OCR 工具,它是你数据处理流程中的AI 增效器

增强 DeepSeek 的提示词策略,增加了 强力模糊匹配 :

  • 明确告诉 AI 注意 QDIL -> QDII 这种常见 OCR 错误。
  • 让 AI 忽略 A 、 C 、 混合 等后缀,专注于核心名称的匹配。
  • 要求 AI 在不确定时, 优先返回最相似的代码 ,而不是直接放弃。

👉 想要源码?
(关注公众号“向左向右立正”)

http://www.jsqmd.com/news/324076/

相关文章:

  • 2026可变情报板 车道指示器厂家怎么选?答案全在这
  • 【2025最新】基于SpringBoot+Vue的新闻资讯系统管理系统源码+MyBatis+MySQL
  • 隧道ACU控制柜哪家好?隧道PLC控制器供应商,隧道PLC微波车检器哪家好?2026隧道PLC区域控制器供应商合集
  • 2026隧道组态软件生产厂家甄选,隧道检测设备厂家八强:隧道综合管理平台推荐+隧道区域控制器厂家推荐
  • 2026隧道紧急电话系统推荐精选:隧道紧急电话推荐指南
  • 2026年评价高的微型挖掘机用户好评厂家推荐
  • 9的倍数后缀切割方案
  • 屏幕尺寸的万花筒:如何在 iOS 碎片化生态中以不变应万变?
  • 萤石开放平台 音视频 | EZOPEN协议介绍
  • 联合编程(加载单个工具,ini读写,图片读写,setting存储)
  • 2026 WINTER 2nd
  • Mybatis:
  • 1.30 - 子集 死锁的原因
  • 5.1 batch normalization的技术
  • C++优先队列详解与仿函数应用
  • 2026年知名的微型挖掘机/工程小型挖掘机厂家综合实力参考(2026)
  • 2026年热门的丽水卧螺离心机设备/丽水卧螺离心机厂家采购参考指南
  • 基于微信小程序的安全应急救援平台的设计和实现
  • SpringBoot+Vue 网络海鲜市场系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • 2026中小企业进销存选型指南:为何百万老板都在推荐象过河?
  • 2026年评价高的卧螺离心机厂家真实测评
  • C++模板类的7大典型应用场景总结得非常精准,涵盖了从基础容器到高级元编程的完整演进路
  • 我写的 Markdown 转换工具(Chrome 扩展)在 Chrome 应用商店上线了
  • 前后端分离新闻资讯系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • C++ 中面向对象编程(OOP)核心概念——**类的定义、封装、继承及类层次结构**——的清晰概述
  • 眼镜店库存总对不上?象过河专版:扫码出入库+度数预警,一招搞定!
  • SpringBoot+Vue 政府管理系统管理平台源码【适合毕设/课设/学习】Java+MySQL
  • 面向对象编程中两个关键机制:**对象自身引用(self-reference)** 和 **方法重置(overriding)**,并对比了 C++ 与 Java 的实现差异
  • 【2025最新】基于SpringBoot+Vue的志同道合交友网站管理系统源码+MyBatis+MySQL
  • openclaw终于安装成功了