影刀RPA指令手册:常用指令分类详解与使用场景速查
影刀有几百个指令,但常用的其实就30多个。
我把这30多个指令按使用频率分类,每个都写了使用场景和坑点。存下来当速查手册用。
先装好环境
www.yingdao.com 下载,社区版免费。装完去Chrome装影刀插件。
第一类:必会核心指令(每天都会用)
1. 启动浏览器 / 跳转网址
使用场景:所有网页自动化流程的第一步。
坑点:
- 启动浏览器后,一定要等页面加载完成再操作下一个指令
- 用"等待元素出现"代替固定等待
- 淘宝/拼多多等网站会检测自动化,建议用"模拟模式"而不是"驱动模式"
2. 填写输入框
使用场景:搜索框输入、登录填账号密码、表单填写。
坑点:
- 有些输入框需要先"点击元素"激活,再填写
- 密码框填写失败,尝试用"模拟输入"(逐字输入,更像真人)
3. 点击元素
使用场景:按钮点击、链接跳转、 tab切换。
坑点:
- 元素被遮住时点击失败 → 先"滚动到元素"
- 按钮是disabled状态 → 用"等待元素属性变化"等它变成可点击
4. 获取文本
使用场景:采集网页上的文字内容(价格、标题、评论数等)。
坑点:
- 获取到的文本包含换行符和多余空格 → 用"文本替换"指令清洗
- 动态加载的内容(如"刚刚发布")需要先等待内容稳定
5. 获取元素属性
使用场景:获取链接的href、图片的src、元素的value等。
示例:获取商品详情页的链接
拼多多店群自动化报活动上架!
指令:获取元素属性 元素:商品标题链接 属性名:href 保存到变量:detail_url6. 启动Excel / 写入Excel / 读取Excel内容
使用场景:所有需要和数据打交道的流程。
坑点:
- 每次"启动Excel"后,用完必须"关闭Excel",否则文件被占用
- 写入时日期变成数字 → 用"格式化日期"转成文本再写入
- 写入报错"Array to String" → 要写入的数据是列表,需要先转字符串
第二类:循环与判断(流程控制核心)
7. For次数循环
使用场景:知道要循环几次,比如"采集前5页数据"。
循环次数:5 循环索引:loop_index(从0开始)8. ForEach列表循环
使用场景:遍历一个列表,比如Excel里读出来的所有行。
列表:excel_data(从Excel读取的结果) 当前项:loop_item(每一行是一个loop_item)重要:loop_item是一个列表,取第N列的值用loop_item[N](索引从0开始)。
9. While条件循环
使用场景:不知道要循环几次,比如"一直翻页直到没有下一页"。
条件:下一页按钮 存在(用"元素是否存在"指令判断) 循环体:处理当前页 → 点击下一页 → 等待加载防无限循环:在循环体内加一个计数器,超过100次强制Break。
10. 相似元素循环
使用场景:页面上有一组结构相同的元素,比如商品列表的每一个商品。
获取相似元素列表://div[@class='item'] → ForEach循环每个相似元素 → 获取当前相似元素的子元素文本 → 写入Excel坑点:相似元素捕获时,一定要选"整个行/整个商品块",而不是单个字段,否则循环会乱。
11. If条件判断
使用场景:根据不同情况执行不同逻辑。
If 条件:price < 100 → 标记为"低价" Else If 条件:price >= 100 and price <= 500 → 标记为"中价" Else → 标记为"高价"比较运算符:==!=><>=<=,字符串比较用包含开头是结尾是。
第三类:数据处理指令
12. 文本拼接
使用场景:把多个变量拼成一个字符串,比如拼接邮件正文。
指令:文本拼接 拼接: "你好," + name + ",你的订单" + order_id + "已发货" 保存到变量:email_body13. 文本替换
使用场景:清洗数据,去掉多余字符。
指令:文本替换 原文本:price_text("¥1,299.00") 查找:"¥" 和 "," 替换:""(空字符串) 结果:"1299.00"14. 正则表达式提取
使用场景:从混乱的文本里提取结构化数据,比如从"价格:¥1,299"里提取1299。
指令:正则表达式匹配 文本:"价格:¥1,299" 正则表达式:\d+\.?\d* 提取结果保存到变量:price_number常用正则:
\d+ → 提取数字 [\u4e00-\u9fa5]+ → 提取中文 [A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,} → 提取邮箱15. JSON转对象 / 对象转JSON文本
使用场景:处理API返回的JSON数据。
HTTP请求 → 响应保存到 response(字符串) → JSON转对象:response → 保存到 data(对象) → 获取JSON对象属性:data["price"] → 保存到变量 price 第四类:等待与异常处理
16. 等待元素出现
使用场景:代替固定等待,让流程更快更稳定。
指令:等待元素出现 元素:价格区域 超时:10秒重要:超时后流程会报错,所以一定要包在Try-Catch里。
17. 等待元素消失
使用场景:等待加载动画消失,确认页面加载完成。
指令:等待元素消失 元素:loading动画 超时:30秒18. Try-Catch-Finally
使用场景:任何可能失败的操作都应该包在Try里。
TEMU店群矩阵自动化运营核价报活动
Try → 点击"提交订单" → 等待"订单提交成功"文字出现 Catch → 打印日志"提交失败,可能已提交" → 截图保存 Finally → 关闭浏览器(无论成功失败都会执行)第五类:高级指令
19. HTTP请求
使用场景:调用API接口,获取或提交数据。
指令:HTTP请求 方法:GET URL:https://api.example.com/products Headers:{"Authorization": "Bearer xxx"} 响应保存到变量:response20. Python代码
使用场景:影刀指令做不到的事情,用Python解决。
指令:Python代码 代码: def main(args): import requests resp = requests.get(args['url']) return {'html': resp.text}  参数:{"url": target_url} 返回值保存到变量:result安装第三方库:在影刀客户端的"Python"设置里,用pip安装。
21. 图像识别-等待元素出现
使用场景:无法通过XPath定位的元素(比如Canvas绘图、Flash、桌面软件)。
指令:图像识别-等待元素出现 目标图片:提前截图的"提交按钮.png" 相似度:0.8(0-1之间,越高越严格) 超时:10秒坑点:
- 截图时尽量只截目标元素,留太多背景会降低识别准确率
- 不同分辨率下截图要重新截
22. 发送飞书消息
使用场景:流程执行完成或出现异常时通知自己。
指令:飞书消息 接收人:自己的飞书open_id 消息内容:"影刀流程执行完成,共处理" + total_count + "条数据"速查表:指令选型指南
| 需求 | 用哪个指令 |
|---|---|
| 在网页输入框里填内容 | 填写输入框 |
| 点击网页按钮 | 点击元素 |
| 获取网页上的文字 | 获取文本 |
| 获取网页元素的属性值 | 获取元素属性 |
| 循环指定次数 | For次数循环 |
| 遍历列表/Excel行 | ForEach列表循环 |
| 不知道循环几次 | While条件循环 |
| 页面有一组相同元素 | 相似元素循环 |
| 根据不同情况执行不同逻辑 | If条件判断 |
| 拼接字符串 | 文本拼接 |
| 从文本提取数字 | 正则表达式匹配 |
| 调用API | HTTP请求 |
| 影刀指令做不到的事 | Python代码 |
| 等待页面元素加载 | 等待元素出现 |
| 防止流程中断 | Try-Catch-Finally |
| 流程完成发通知 | 发送飞书消息 |
常见报错速查
| 报错信息 | 原因 | 解决方法 |
|---|---|---|
| 元素未找到 | XPath错了,或元素还没加载 | 用捕获工具重新捕获,加等待 |
| Array to String | 写入Excel的数据是列表类型 | 用"文本拼接"把列表转成字符串 |
| 文件被另一个进程占用 | Excel没关闭 | 每次用完Excel都加"关闭Excel"指令 |
| JSON解析失败 | HTTP响应不是合法JSON | 先打印response看内容,可能是报错页面 |
| 等待超时 | 元素一直没出现 | 先手动打开网页,看元素是否真的存在 |
| Python模块未找到 | 没安装第三方库 | 在影刀Python设置里pip安装 |
更多指令详解和案例模板,可以在 home.linyan.cloud 查找。
#影刀RPA #指令手册 #速查表 #常用指令 #新手教程
作者:林焱