摘要:在电商场景中,面对高频但受限的数据需求,引入AI Agent完成自动化数据获取已逐渐成为高效运营的重要手段。本文旨在分享一个基于AI Agent实现实时、批量、低成本数据抓取的完整实践路径,并探讨其可行性与优化策略。
在电商场景中,面对高频但受限的数据需求,引入AI Agent完成自动化数据获取已逐渐成为高效运营的重要手段。本文旨在分享一个基于AI Agent实现实时、批量、低成本数据抓取的完整实践路径,并探讨其可行性与优化策略。
在日常业务运营过程中,我们时常需要从多个封闭系统中获取报表数据用于分析,但由于账号权限限制或平台收费机制(例如某主流小程序数据分析平台对导出功能设置年费近5万元),企业尤其是中小型企业难以承担持续成本。
但是公司需要获取这个数据来做分析,因此需要一个解决方案。
基于当前的场景做了部分方案的调研:
人工:目前没有人力资源来做这个数据的统计——Pass爬虫:调取接口时发现这个数据返回加密了——PassRPA:没有运维能力来持续更新——PassAgent:一劳永逸,每次丢给他,任劳任怨——Deal,开干接下来,开始搭建Agent。
首先,模拟在没有Agent帮助的时候,人类是怎么完成这个任务的。如下,在此流程中,全流程10步,可以分为三大节点,页面登录、数据加载、数据下载。
在引入AI能力后,整个工作流是:
现在,AI参与的任务流有了,开始搭建Agent。
遵循当前主流的大模型 Agent 构建范式,LLM(以下简称推理)、Action(以下简称工具)、记忆。下面将分别从这三个要素来讲解怎么搭建这个Agent。
注:本次搭建agent过程中,涉及到部分工作,需要懂代码或者技术人员的支持才能完成(一次性)。
工具:提供了与现实世界交互的能力,例如获取用户的本地数据、调用用户的API、操作用户的电脑等。
按照已有工作流,为了完成任务,至少需要几种能力:
操作网页的能力;对本地文件夹的增删改查能力,注意,删除能力谨慎选择。当前Agent用的工具是Playwright(网页操控)和Cherry/filesystem(文件编辑)、Shell(控制台)。
MCP广场,有丰富的MCP,大家可以自行选择
https://www.modelscope.cn/mcp?page=1
MCP配置,需要一点技术能力,可以寻求技术大佬的帮助或者按照MCP自带的指引一步步自行配置,非本文重点,不赘述。
记忆:保存任务上下文,减少多次重复请求
当前任务流为单次任务,非连续任务,因此长期记忆可以关闭,保留单次任务内的短期记忆即可。
推理推理:提供任务理解、问题拆解与上下文判断
模型最终选择了qwen3-coder-plus(免费且输出相对稳定。推荐的超参:温度:0.7,Top-P:0.8)
平台选择了Cherry Studio,一个支持多服务商集成的 AI 对话客户端(本地)。
对比Coze等平台来说,从引入模型、搭建MCP、制作智能体流程,需要全部自己动手处理,可以帮助用户更好地了解各模块的逻辑和作用。
使用指南
1.下载并安装到本地:https://www.cherry-ai.com/
2.右上角设置,模型服务,绑定聚合供应商,添加大模型
注:Cherry Studio对接了多个大模型聚合供应商,例如硅基流动、openrouter等平台。类似一个大模型的聚合平台。添加不同供应商的地址和密钥,绑定账户,添加供应商支持的大模型,并使用绑定的账户进行大模型调用的结算。
3.去聚合平台找到大模型的模型唯一ID,添加。
提示词下面将按照写提示词的流程,并针对里面踩的坑以及解决方案来写。
Step 1:一个专注于数据的Agent
最开始对Agent的定义,是完成Step1-Step10的全流程。实现从打开网页到下载全部数据的全部任务,基于ReAct范式,让他规划计划,然后完成任务。
参考提示词:
#角色#
你是一个自动化机器人助手,你的每一步都是基于大模型的思考,然后使用playwright的MCP服务去执行。
#任务#
每次任务,我会告诉你对应的网址,账号、密码,有可能会告诉你具体对应的页面,你要做的是根据我提出的问题,来帮我做自动化的操作,包括但不限于,获取数据、分析总结、执行操作等。
#举例#
示例1:
问题:帮我在********,这个地址,****模块里面,找到页面访问 数据明细表格,查询8.17号,“我的”页面的访问人数
思考:这个网址是一个基于**平台的数据分析平台,你现在需要这个数据,我将使用playwright打开这个网页,但是需要你扫码登录,请扫码。
用户交互:线下扫码
问题:登录成功。请继续执行
思考:当前已经登录成功,现在使用playwright打开**模块里面,找到页面访问 数据明细表格,使用筛选条件时间为:8.17-8.17,查询8.17号,“我的”页面的访问人数为10000.
回复:8.17号,“我的”页面的访问人数为10000.
示例2:
问题:继续,基于任务一当前数据表格,标筛选为全选的所有数据,并导出表格形式给我。
思考:
1.当前已经登录成功,并找到对应数据;
2.使用筛选条件2025/08/17-2025/08/17;
3.要求指标全部勾选,当前仅勾选了3个指标,因此需要将全部12个指标全部勾选。
4.勾选指标,完成后执行筛选,列表出来的即为用户要求的所有数据,现在开始下载数据;
5.点击下载数据,发现提示需要付费,客户应该是不希望付费,因此我们选择通过页面数据来获取数据并组装成表格形式。
6.我们看到当前页面展示了10行数据,每行12列数据,但是我不确定这是否是全部数据;
7.底部有翻页动作,证明当前页面展示的非全部数据,需要通过下一页找到所有数据,直到最后一页;
8.另外通过左右滑动屏幕,发现当前展示的非全部列数,因此,在每一页,需要通过滑动到最右边,来获取一行的所有数据。
输出:按照步骤依次执行,最终输出表格为:
*********
#要求#
1.如果遇到阻碍,请将阻碍抛出来,并让用户协助解决;
2.问题解决后,继续执行下一步操作。
3.所有的操作基于模型的思考。
4.所有的答案基于获得的内容,不能胡编乱造。
接下来是几轮的用户和AI的交互:
在第一轮的任务中,Prompt有个问题
AI路径过长,且没有很好的拆解用户的任务,执行不可控、幻觉频发。
-由于token的限制,多任务可能完不成(例如上面的例子,任务做到一半欠费了)
-任务越多,幻觉会越严重,到后面,模型回答已经开始胡说八道(修改生成的数据)
解决方案:将上述流程抽象为三个子Agent模型,各司其职:
登录处理Agent:处理认证流程;数据筛选Agent:执行筛选操作;下载处理Agent:执行分页采集与本地存储但是,基于第一次尝试,Agent处理过于复杂(打开网页、输入筛选条件、勾选指标,完成这两项任务,大概用了12美刀的token,直接给账户干欠费了)
且实际过程中,这两个任务并不消耗过多的精力。
因此这次搭建的新的Agent将聚焦在重复工作,即数据下载模块。通过人工把所有的前提条件都准备好了,包括登录、筛选条件、指标勾选等。
下面将仅对下载处理Agent做配置。
Step 2:通用Agent
上述Agent还有个问题:Prompt任务限定死板,只能执行固定任务。
当前更希望Agent有更泛化的能力,根据每次单独任务,完成更多的事情。
基于这个目标,参考Agent提示词(此时将Agent抽象成了一个通用的Agent,而不是单一完成数据存储的Agent):
你的目标是遵循用户指令完成用户任务,通过使用提供的playwright/Shell/fileSystem/Python3/Node等工具并将任务分解为更小的步骤来实现最终目标。
Environment
-OS: Mac Os
-Browser: Chrome
-Node: v23.11.1
-python3: 3.12.8
-Work Folder: /User/Data/xxx
Skills
-你可以使用playwright来操纵浏览器
-你可以使用Shell工具来操作终端exec_command
-你可以执行Python代码
-你可以生成Node代码,并通过exec_command来执行
-你可以使用file工具来读写文件
## important
-安全的工作区是Work Folder:*******
-请你每一步都必须选择一个工具使用,直到结束时才可以不使用工具!
-每次必须选择一个工具使用tool_calls-每次都必须选择一个工具使用tool_calls-每次必须选择一个工具使用tool_calls
-如果tool_calls的arguments为空,那么请传入”arguments”: “{}”
请你选择一个工具执行:
好的,一个可以调用工具的通用的Agent搭建好了。
现在使用Agent的思路也调整一下,基于第一次尝试中遇到的各种问题(任务中断、中途更换模型等),现在先让Agent自己规划出一个SOP流程,以便于可以让其他大模型或者Agent也能使用。
好的,到此为止,通用的Agent能力符合预期,现在测试一下输出的4份文件,开启新的对话,重新开始执行任务,看看结果是否符合预期。
Step 3:Agent测试
前置处理:打开对应网页,并找到目标页面,将筛选条件输入和设置完成。
Step 4:反复测试
在Step3 任务完成后,在已经完成的任务(同一个对话框)后面追加任务,完成另一天的数据加载。
来源:人人都是产品经理一点号