影刀RPA新手教程:第一个POST请求完全指南——让影刀向服务器提交数据

📅 2026/7/2 13:56:57 👁️ 阅读次数 📝 编程学习
影刀RPA新手教程:第一个POST请求完全指南——让影刀向服务器提交数据

影刀RPA新手教程:第一个POST请求完全指南——让影刀向服务器提交数据

你好,我是林焱。

上一篇我们学会了怎么用GET请求从网络上拿数据。

这一篇我们反过来学:怎么把数据提交给服务器。

这个操作叫POST请求,它在影刀RPA里非常常见。

报名登记、订单提交、登录、表单填写,本质上都是POST。

一、POST请求和GET请求有什么不同

GET请求是"拿信息",POST请求是"交信息"。

GET请求的参数放在URL后面,所有人都能看到。

POST请求的参数放在请求体里,相对隐蔽,而且可以携带更多数据。

比如你要提交姓名和邮箱,用GET的话,URL会变成:

https://api.example.com/subscribe?name=张三&email=zhangsan@test.com

用POST的话,URL保持不变,姓名和邮箱放在请求体里发过去。

二、案例主线:报名表单自动提交

我们今天做一个完整的案例。

假设公司有一个在线活动报名页面,需要每天把收集到的报名信息提交到后台。

报名信息包括:姓名、邮箱、手机号。

我们要让影刀自动读取Excel里的报名信息,一条一条用POST请求提交。

提交完成后,把成功和失败的结果分别记录到Excel里。

三、影刀安装与流程新建

如果你已经安装影刀,直接打开。

点击"新建应用",选择"流程型应用",命名"我的第一个POST请求"。

左边指令区搜索"HTTP",把"HTTP请求"拖到画布中间。

四、准备测试数据:Excel表格

先新建一个Excel文件,保存为"报名信息.xlsx"。

表格内容如下:

姓名邮箱手机号
张三zhangsan@test.com13800138000
李四lisi@test.com13900139000
王五wangwu@test.com13700137000

把这个Excel放在影刀能找到的位置,比如桌面或流程同目录。

五、读取Excel:用循环逐行处理

影刀里用"打开Excel"指令打开"报名信息.xlsx"。

然后用"读取Excel区域"指令读取全部数据,保存到变量"报名列表"。

"报名列表"是一个二维列表,第一行是表头,后面是数据。

接着拖入"ForEach列表循环",对"报名列表"进行循环。

注意跳过第一行表头,或者读取时指定从第二行开始。

拼多多店群自动化报活动上架!

六、元素定位:如果接口需要先从网页取Token

有些POST请求需要先登录,获取一个Token,然后才能提交。

这时候要用网页自动化打开登录页,填写账号密码,点击登录。

登录成功后,用"获取元素文本"或"执行JS脚本"拿到Token。

Token的存放位置可能在网页某个隐藏元素里,XPath写法示例:

//input[@id="token"]/@value

或者用CSS选择器:

#token

这个Token将作为POST请求Header里的Authorization字段。

七、变量和数据类型:报名信息怎么存

读取Excel后,每一行是一个列表。

比如第一行数据是:[“张三”, “zhangsan@test.com”, “13800138000”]。

我们可以用索引取值:

姓名 = 当前行[0] 邮箱 = 当前行[1] 手机号 = 当前行[2]

也可以把每一行转成字典,方便后续用键名取值:

{"姓名":当前行[0],"邮箱":当前行[1],"手机号":当前行[2]}

八、配置POST请求

拖入"HTTP请求"指令,属性区设置如下:

  • 请求方法:POST
  • 请求URL:
https://api.example.com/subscribe
  • 请求头:
Content-Type: application/json
  • 请求体:
{"name":"{{姓名}}","email":"{{邮箱}}","phone":"{{手机号}}"}
  • 保存结果至:提交响应

注意:影刀里用{{变量名}}把变量嵌入JSON字符串中。

九、JSON格式请求体怎么写

POST请求体常见格式有两种。

一种是JSON格式,Content-Type是application/json:

{"name":"张三","email":"zhangsan@test.com"}

另一种是表单格式,Content-Type是application/x-www-form-urlencoded:

name=张三&email=zhangsan@test.com

用哪种格式取决于接口文档。

如果接口要求JSON,就用JSON;如果要求表单,就用表单。

不确定的话,先问提供接口的人,或者用浏览器开发者工具看网页提交时用的格式。

十、流程控制:If判断处理成功失败

每次POST请求结束后,都要判断结果。

拖入"If判断",条件:

{{提交响应}} contains "success"

如果成功,把"姓名 + 提交成功"写入"结果.xlsx"的"成功"sheet。

如果失败,把"姓名 + 失败原因"写入"失败"sheet。

这样跑完整个流程,成功失败一目了然。

十一、网页自动化:模拟表单操作备用

如果接口不稳定,也可以用网页自动化直接操作页面表单。

用"打开网页"打开报名页面。

用"输入文本"在姓名、邮箱、手机号输入框里填写内容。

用"点击元素"点击提交按钮。

用"获取元素文本"读取提交结果提示。

这种方式比HTTP请求慢,但兼容性更好,适合没有开放接口的系统。

十二、数据处理:把结果写入Excel

影刀的"写入Excel行"指令可以一次写一行数据。

循环里每次提交完,把结果追加到"结果.xlsx"的最后一行。

配置:

  • 工作簿:结果.xlsx
  • 工作表:Sheet1
  • 起始单元格:A1
  • 写入方式:追加行
  • 写入内容:[“{{姓名}}”, “{{邮箱}}”, “{{提交结果}}”]

十三、鼠标键盘与图像:处理验证码弹窗

有时候提交表单会弹出验证码或滑动条。

影刀的"图像识别"指令可以识别验证码图片区域。

"移动鼠标"和"拖拽元素"可以完成滑动验证。

如果遇到验证码,一般建议先调用第三方打码平台,或者人工介入。

十四、进阶技能:批量提交与去重

实际场景中,报名信息可能重复。

提交前先用"数据去重"指令或Python代码去重。

也可以先查询一下该邮箱是否已经提交过,再决定是否提交。

查询用GET请求,提交用POST请求,两者组合使用。

十五、平台实战:把这个流程变成定时任务

流程跑通后,发布到影刀云调度平台。

设置每天下午6点执行,自动提交当天新增的报名信息。

TEMU店群矩阵自动化运营核价报活动


云端运行的好处是:你不需要一直开着电脑。

十六、系统联动:提交成功后发通知

提交成功后,可以给企业微信或钉钉机器人发消息。

比如:“今日报名提交完成,成功50条,失败3条。”

失败的消息单独列出来,方便人工复核。

十七、工程化规范:命名与异常处理

变量命名建议:

  • 原始响应:提交响应
  • 解析结果:提交结果字典
  • 成功标记:是否成功

每个POST请求外加TryCatch:

  • Try:发起POST请求
  • Catch:记录异常信息,继续下一条

这样不会因为一条数据失败导致整个流程中断。

十八、速查表与报错

常见报错:

400 Bad Request:请求体格式写错了,比如JSON里少了一个逗号。

401 Unauthorized:缺少Authorization头,需要先登录。

403 Forbidden:接口拒绝访问,可能是没有权限或IP被封。

404 Not Found:URL地址错了。

500 Internal Server Error:服务器内部错误,稍后重试。

十九、我踩过的坑:Content-Type没写对

我第一次写POST请求时,请求体用了JSON格式,但请求头没写Content-Type。

结果服务器当成表单处理,解析失败,一直返回400。

后来把请求头加上Content-Type: application/json才成功。

这个坑非常隐蔽,因为URL和请求体看起来都没问题。

记住:POST请求一定要确认请求头和请求体格式匹配。

二十、POST请求完整流程总结

第一步:准备Excel数据,格式为姓名、邮箱、手机号。

第二步:用"打开Excel"和"读取Excel区域"读取数据。

第三步:用ForEach循环逐行处理。

第四步:把每行数据赋值给姓名、邮箱、手机号变量。

第五步:配置HTTP POST请求,请求体用JSON格式嵌入变量。

第六步:保存响应到"提交响应"变量。

第七步:If判断响应里是否包含success字段。

第八步:成功写入成功sheet,失败写入失败sheet。

第九步:运行流程,检查结果。

做这些自动化流程的时候,我喜欢把接口地址和参数规范整理在 home.linyan.cloud 上,避免不同项目之间互相抄错。

建议你从零开始也养成这个习惯。

作者:林焱

#影刀RPA #RPA教程 #POST请求 #HTTP请求 #表单提交 #JSON #零基础学RPA #影刀新手