影刀RPA新手教程:OCR识别发票完全指南——自动读取发票信息并填表 📅 2026/6/28 5:16:32 影刀RPA新手教程OCR识别发票完全指南——自动读取发票信息并填表做财务的李姐每天要处理几十张发票。收到的发票截图、扫描件得一个一个手动录入到系统里发票号、开票日期、金额、税额。她说“字倒是看得见但一个一个敲太慢了还总是看串行。”我告诉她影刀的OCR功能不只是看验证码看发票更是一把好手。准备工作拿到一张发票图片首先你需要一张发票的图片文件。可以是截图、pdf导出、手机拍照格式jpg或png都行。把图片放到电脑上一个固定的位置比如C:\fapiao\fapiao_001.png。如果你是批量处理建议把所有发票放在同一个文件夹下命名有规律一点方便后面写循环读取。安装与配置通用文字识别指令影刀的OCR功能不需要额外安装任何东西。在指令面板左侧搜索通用文字识别拖到画布上就能用。但你需要注意一点OCR调用的是影刀AI引擎需要联网。免费版每个月有赠送额度一般够日常使用。如果额度用完会提示超出使用次数需要到个人中心充值。我第一次用的时候没注意额度流程跑到一半突然报错排查了半天才发现是额度没了。变量是什么先把发票数据存起来在开始识别之前先创建几个变量来存结果。变量就像一个带标签的盒子。你创建一个叫fapiao_no的变量意思是发票号然后把OCR读出来的发票号放进去。以后想用这个发票号的时候直接用fapiao_no就行了。创建变量的方法在影刀左侧的变量管理面板点添加变量填变量名和初始值。初始值可以写空字符串等OCR识别后再赋值。需要创建的变量fapiao_no发票号码fapiao_date开票日期fapiao_amount金额fapiao_tax税额网页自动化与元素定位打开发票识别的入口虽然OCR本身不需要网页但我们最终是要把发票信息填到系统的网页表单里。店群矩阵自动化突破运营极限先用打开网页指令打开你的发票录入系统的网址。然后用等待元素出现指令等表单加载完成。CSS选择器可以写成input[name“invoice_no”]。注意这里的name是网页里input标签的name属性不是发票号本身。我踩过一个坑表单加载完了但输入框被一个加载动画遮住了。影刀尝试输入文字时报元素不可交互。解决方法是加一步等待等加载动画消失后再操作。OCR识别发票核心步骤现在我们用通用文字识别指令来读发票。配置参数很简单图片路径C:\fapiao\fapiao_001.png结果保存至all_text运行后all_text变量里的内容大概是这样的增值税电子普通发票 发票号码12345678 开票日期2025年06月15日 金额¥1,280.00 税额¥38.40 税价合计¥1,318.40一堆文字混在一起。我们得从中提取出需要的信息。正则表达式从一堆文字中提取关键信息正则表达式听起来吓人其实就是一套从文字里找东西的规则。比如你要找发票号发票号码都是数字一般是8位。正则写成\d{8}。\d表示数字{8}表示正好8个。在影刀里用正则匹配指令源文本all_text匹配模式\d{8}结果保存到fapiao_no提取日期要稍微复杂一点\d{4}年\d{2}月\d{2}日。意思是4个数字年2个数字月2个数字日。提取金额用¥[\d,].\d{2}。解释一下¥ 匹配人民币符号[\d,] 匹配数字和逗号一次或多次比如1,280.\d{2} 匹配小数点后两位数据处理清洗提取出来的内容提取出来的日期是2025年06月15日但系统表单要求格式是2025-06-15。用替换文本指令分两步处理第一步把年替换成-“把月替换成”-第二步把日替换成空金额也有同样的问题¥1,280.00要去掉¥和逗号只保留1280.00。用Python指令处理更灵活amountGetVar(fapiao_amount_raw)amountamount.replace(¥,).replace(,,)SetVar(fapiao_amount,amount)流程控制如果OCR没读到怎么办OCR不一定一次就读对。发票照片光线不好、发票折痕太多都可能导致识别不全。用If判断来检查如果 fapiao_no 是空字符串弹出提示发票号码识别失败请手动输入否则继续后续步骤还可以加一个For次数循环做重试。重试3次每次用不同的OCR识别类型影刀支持通用文字识别和通用文字识别高精度版前者免费后者更准但要消耗额度。写入Excel把识别结果保存到表格很多财务流程是把发票信息录入Excel再批量导入系统。影刀的Excel操作指令很全。先用打开Excel打开一个文件再用写入单元格把数据写到指定位置。假设Excel表头是发票号、日期、金额、税额、税价合计。数据从第2行开始写写入A2fapiao_no写入B2fapiao_date写入C2fapiao_amount写入D2fapiao_tax如果是批量处理多张发票用一个循环For 每一张发票图片 in 发票文件夹 OCR识别 数据清洗 写入Excel下一行鼠标键盘操作当网页表单需要鼠标聚焦有些网页表单必须先用鼠标点一下输入框才能输入文字。这时候用点击元素指令目标元素用XPath定位//input[name‘invoice_no’]点击方式单击temu店群自动化报活动案例点完之后再加一个输入文本指令。顺序不能反。进阶技能把OCR识别封装成子流程如果你有多个流程都需要OCR识别发票可以把这个功能做成子流程。主流程调用子流程时传入发票图片路径子流程返回一个字典包含发票号、日期、金额、税额。子流程里的代码和主流程一样写没有任何区别。唯一的区别是子流程可以设置输入参数和输出参数。平台实战完整流程串一遍完整流程分8步打开系统网页等待表单加载完成在发票文件夹里找到所有发票图片循环每张图片OCR识别发票内容正则提取发票号、日期、金额、税额数据清洗格式化日期和金额逐项填写到网页表单并提交这样一个流程跑下来李姐原来需要1小时的工作现在3分钟就搞定了。系统联动识别后的通知发票录入完成后可以用飞书机器人发一条通知。在系统联动指令组里找飞书机器人-发送消息配置好Webhook地址。消息内容可以这样写“今日已处理N张发票发票号范围XXXXXX总金额XXXX元”Webhook地址需要在飞书群里添加机器人后获取。如果不会配置可以在home.linyan.cloud上搜索飞书机器人教程。工程化规范多张发票处理时给每张发票的识别结果加个成功/失败标记。在Excel里加一列识别状态成功的写成功失败的写失败——需人工核对。变量命名要有规律fapiao_前缀统一fapiao_no、fapiao_date、fapiao_amount。常见报错与解决“超出OCR使用次数”到个人中心查看额度充值或切换识别类型。“正则匹配为空”检查发票截图是否清晰尝试换一种识别类型。数字识别失败时手动打印all_text日志看看OCR到底返回了什么。“XPath定位不到输入框”用浏览器F12检查网页结构确认input标签的属性值是否正确。有些动态生成的表单id和name会变化需要用其他属性定位。#影刀RPA #RPA教程 #影刀新手教程 #OCR发票识别 #发票自动化 #财务自动化 #正则表达式作者林焱