推荐文章:Web Agent Protocol - 提升自动化测试与交互效率的利器
Web Agent Protocol:项目的核心功能/场景
Web Agent Protocol(WAP)是一个标准化框架,旨在实现用户、Web Agent 和浏览器之间的无缝交互,通过记录和重放浏览器动作,提高自动化测试和交互效率。
项目介绍
Web Agent Protocol 提供了一个 Python SDK,实现了完整规范,使用户能够轻松地收集、转换和重放浏览器动作。项目核心功能包括:
- 收集:通过 OTA-WAP Chrome 扩展收集用户交互数据。
- 转换:将原始事件流转换为精确重放或智能重放动作列表。
- 转换:将记录的动作转换为 MCP 服务器,以供任何 Agent 或用户重用。
- 重放:使用 WAP-Replay 协议确保准确的重放浏览器操作。
项目技术分析
Web Agent Protocol 的技术架构清晰,分为数据收集、数据处理和重放三个主要阶段:
- 数据收集:使用 Chrome 扩展捕获用户与网页的交互行为,并通过数据收集服务器收集这些数据。
- 数据处理:将收集到的数据转换为可重放的格式,包括精确重放和智能重放两种模式。
- 重放:使用 WAP-Replay 协议将处理后的数据在浏览器中重放,以模拟用户行为。
项目的 Python SDK 实现了完整的 WAP 规范,使得开发者可以方便地集成和使用。
项目及应用场景
Web Agent Protocol 的应用场景广泛,主要包括:
- 自动化测试:通过记录用户操作,自动生成测试脚本,提高测试覆盖率。
- 用户行为分析:分析用户与网站或应用的交互,优化用户体验。
- 智能助手:利用收集的数据训练智能助手,实现更智能的用户交互。
项目特点
Web Agent Protocol 的主要特点包括:
- 标准化框架:提供了一套标准化的方法来记录和重放浏览器操作。
- 灵活性:支持精确重放和智能重放两种模式,满足不同的使用需求。
- 可重用性:通过 MCP 服务器,可以重复使用收集的数据,提高开发效率。
- 易于集成:Python SDK 使得项目可以轻松集成到现有的开发流程中。
以下是 Web Agent Protocol 的具体使用方法:
安装与设置
首先,创建一个 Conda 环境,并安装所需的依赖:
conda create -n WAP python=3.11
conda activate WAP
pip install -r requirements.txt
然后,设置 Python 路径和创建 .env
文件以存储 API 密钥:
set PYTHONPATH=C:/path/to/webagentprotocol # for Windows
export PYTHONPATH=/path/to/webagentprotocol # for Linux
# .env 文件内容
OPENAI_API_KEY=sk-proj-...
DEEPSEEK_API_KEY=sk-...
数据收集
使用 Chrome 扩展进行数据收集,并启动数据收集服务器:
python action_collect_server.py
确保扩展的 Host 和 Port 设置与服务器配置相匹配。
数据处理
根据需求,生成精确重放或智能重放的列表:
# 生成精确重放列表
python wap_replay/generate_exact_replay_list.py --data_dir_path data/<date>/<task_id> --output_dir_path data_processed/exact_replay
# 生成智能重放列表
python wap_replay/generate_smart_replay_list.py --data_dir_path data/<date>/<task_id> --output_dir_path data_processed/smart_replay
重放
使用以下命令重放列表:
python run_replay.py --model-provider openai --wap_replay_list data_processed/exact_replay/wap_exact_replay_list_<task_id>.json --max-concurrent 1
对于智能重放,只需替换为智能重放列表的路径。
转换为 MCP 服务器
python wap_replay\generate_mcp_server.py --task_id <task_id>
转换后的 MCP 服务器将位于 mcp_servers
文件夹下。
使用 MCP 重放
需要两个终端进行 MCP 重放。在一个终端运行:
python wap_service.py
在另一个终端运行:
python mcp_client.py
然后在第二个终端输入您的提示信息。
Web Agent Protocol 是一个功能强大的工具,可以帮助开发者和测试人员提高自动化测试和交互的效率,从而提升产品质量。如果您正在寻找一种高效的方式来记录和重放用户行为,Web Agent Protocol 可能是您的不二选择。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考