验证图片包含文本
验证图片包含文本 用于判断一张图片中是否出现了指定的文字。它先对图片做 OCR 文字识别,再检查识别结果中是否包含目标文本,包含则返回 true,否则返回 false,常用于截图文案校验、图片内容断言等场景。
指令标识:VerifyImageContainsText
指令类型:验证指令
指令描述:对图片做 OCR 识别后验证是否包含指定文本,包含返回 true,否则返回 false,结果保存到指定变量
先选使用方式
Section titled “先选使用方式”工作流支持「可视化编排」和「代码编排」两种创建方式。验证图片包含文本 在两种方式里都能用,核心业务参数一致,区别主要是你通过界面配置,还是通过 Python 脚本配置。
| 方式 | 怎么用 | 适合人群 |
|---|---|---|
| 可视化编排(推荐先学) | 拖入「验证图片包含文本」节点,在右侧表单填写图片地址和待校验文本 | 大多数用户,零代码,适合快速搭建和调试 |
| 代码编排(Python) | 在脚本中调用 bots.verifyImageContainsText(imageUrl="...", text="...", outKey="result") | 熟悉代码、需要复用脚本或批量生成流程的用户 |
第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名,方便两种方式对应。
什么时候用?
Section titled “什么时候用?”- 需要确认某张截图中出现了预期的文案(如标题、提示语、价格等)。
- 元素文本无法通过 DOM 获取,只能从图片中识别。
- 做内容断言,验证图片渲染的文字是否符合预期。
如果你要校验的是 DOM 中的文本,可优先使用 获取文本 配合 验证字符串匹配。
- 已经准备好图片地址,且地址在当前执行环境可访问。
- 图片中的文字清晰、不被遮挡,分辨率足够,避免 OCR 识别失败。
- 待校验文本与图片中文字的写法一致(注意全半角、空格、大小写)。
- 已规划好用于保存结果的输出变量名。
可视化编排:从 0 到跑通
Section titled “可视化编排:从 0 到跑通”下面用一个常见场景演示:校验截图中是否出现了”提交成功”提示。按 4 步即可跑起来:
- 在工作流画布中添加 验证图片包含文本 指令。
- 在右侧配置面板填写 图片地址 和 待校验文本:
图片地址:https://example.com/assets/screenshots/result.png待校验文本:提交成功- 在 将结果保存至 填写变量名,例如
containsText。 - 点击运行,输出变量为
true表示图片中识别到了”提交成功”。
| 界面名称 | 代码属性名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| 图片地址 | imageUrl | String | 是 | - | 待识别的图片地址,需可被执行环境访问。 |
| 待校验文本 | text | String | 是 | - | 要在图片识别结果中查找的文本。 |
| False结果处理 | falseResultHandling | String | 否 | 输出结果 | 验证失败时的处理方式,可选 输出结果、抛出异常。 |
| 界面名称 | 代码属性名 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| 将结果保存至 | outKey | String | 是 | 保存验证结果的变量名,返回 Boolean:true 表示图片中包含该文本,false 表示未识别到。 |
验证图片包含文本节点运行结束后状态为成功。- 运行日志中没有参数缺失、超时或执行失败等错误。
- 如果配置了输出变量,后续节点能够读取到符合预期的结果。
- 后续节点能够继续执行,流程没有因为该节点异常中断。
| 现象 / 报错原文 | 可能原因 | 处理建议 |
|---|---|---|
日志报 VerifyImageContainsText: imageUrl 不能为空 | 图片地址未填写 | 检查「图片地址」是否填写;代码编排确认 imageUrl 已传入 |
日志报 VerifyImageContainsText: text 不能为空 | 待校验文本未填写 | 检查「待校验文本」是否填写;代码编排确认 text 已传入 |
日志报 OCR 返回结果不是合法 JSON | OCR 服务返回异常 | 重试或联系管理员检查 OCR 服务可用性 |
日志提示 ocr.recognition.url 未配置 | OCR 识别服务地址未配置 | 联系管理员检查执行环境的 OCR 服务配置 |
结果总是 false | 文字模糊、被遮挡,或文本写法不一致 | 提高图片清晰度,核对全半角、空格与大小写 |
Python 代码编排
Section titled “Python 代码编排”代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。
# 验证图片中是否包含指定文本,结果保存到 containsTextbots.verifyImageContainsText( imageUrl="https://example.com/assets/screenshots/result.png", text="提交成功", outKey="containsText",)验证失败时如果希望直接中断流程,可将处理方式设为抛出异常:
bots.verifyImageContainsText( imageUrl="https://example.com/assets/screenshots/result.png", text="提交成功", falseResultHandling="THROW_EXCEPTION", outKey="containsText",)可视化表单里的「图片地址」「待校验文本」「将结果保存至」分别对应代码里的 imageUrl、text、outKey。
Q1:文本匹配是精确匹配还是包含匹配?
Section titled “Q1:文本匹配是精确匹配还是包含匹配?”A: 采用包含匹配。只要 OCR 识别结果中的某一段文字包含了「待校验文本」即返回 true。
Q2:支持哪些图片格式?
Section titled “Q2:支持哪些图片格式?”A: 支持常见格式(如 PNG、JPG、JPEG 等)。建议使用清晰、无损的图片以提升 OCR 准确率。
Q3:识别不出文字怎么办?
Section titled “Q3:识别不出文字怎么办?”A: 优先提高图片分辨率与对比度,避免文字被遮挡或过度压缩;并确认 OCR 服务在当前执行环境可用。