一、我是谁,我卡在哪
个人背景:LOL 老玩家,主玩海克斯大乱斗。平时从来不会分析战绩,但是有AI了就可以不一样!客户端生涯页只给基础 KDA,想看死亡数趋势、阵容伤害构成、英雄类型胜率这些深度数据完全没有。
当前痛点:
网上的战绩查询只能看生涯或者我的助手,但我不会写脚本也没法批量拿到拿到数据,做数据可视化和深度分析更是超出我能力范围
二、我用 TraeWork 怎么解决的
模式
Code
Work
具体实践步骤:
第一步:
让work设计方案,给了一堆方案都得我自己去运行,懒得运行,就拿方案给code,让code按方案一条龙执行如下
编写 LCU API 战绩拉取脚本
告诉 TraeWork 我的诉求,它给出方案后直接生成了完整的 lcu_fetch_matches.py,包括自动定位客户端、认证、拉取比赛、解析 KDA/伤害/装备等字段。
第二步:逐个排查国服客户端的坑
脚本第一次跑失败了。国服 WeGame 以管理员权限启动客户端,非提权进程读不到命令行参数,lockfile 还被清空成 0 字节。TraeWork 没有卡住,而是逐步排查:先确认进程在运行 → 查注册表定位安装目录 → 发现 lockfile 是旧的 → 最终从 LeagueClientUx.log 日志里正则提取出当前会话的 --app-port 和 --remoting-auth-token,成功连上 LCU。
第三步:适配新版战绩接口
连上 LCU 后发现国服把旧版 /products/id/{puuid}/games 接口砍了(404)。TraeWork 通过 /help 路由探测出可用接口列表,找到新版 GAMHS 路由 /products/lol/{puuid}/matches,再根据返回的 JSON 样本适配了小驼峰字段名和 10 人参与者结构。
第四步:逐场补拉完整 10 人阵容
第一轮拉到的数据只有自己一个人——GAMHS 的列表接口只返回自己的 participant。TraeWork 发现后自动加了第二步:逐场调用 /lol-match-history/v1/games/{gameId} 获取完整 10 人阵容,包括队友和对手的 KDA、伤害、治疗量。这样阵容分析才有了数据基础。
〔截图位:终端输出 “处理第 1/21 场…” 进度〕
第五步:深度分析——队友、阵容、英雄适配
拿到完整 10 人数据后,TraeWork 做了四个维度的分析:
英雄类型胜率:把 15 个英雄按定位分组,发现 AP 刺客(妖姬/不祥/蜘蛛)75% 胜率是最佳定位,AP 消耗型(提莫)0% 胜率应直接放弃
阵容前排分析:有前排坦克时胜率 58% vs 无坦克 38%,前排就是大乱斗的保险
伤害占比:你在队伍总伤害中通常占 14-20%,定位是副 C 而非主 carry
连战衰减:8/15 连打 10 场,前 4 场连胜后状态断崖式下跌,末段 4 连败
第六步:生成 D3 交互式仪表盘
最后让 TraeWork 做可视化,它调用了数据可视化插件,用 D3 v7 生成了一个单文件 HTML 仪表盘。第一版做完后我觉得图表太丑,让它重新设计——第二版换成 LOL 风格深色主题(金色 #c8aa6e + 青色 #0ac8b9),标题金色渐变文字,KPI 卡片 hover 浮动效果,图表从 4 张扩展到 8 张。
三、提效前后对比
| 环节 | 以前 | 现在(TraeWork) |
|---|---|---|
| 获取战绩 | 手动截图生涯页,逐场抄 | 一行命令,21 场完整数据 3 秒拉完 |
| 阵容数据 | 完全没有 | 逐场补拉 10 人阵容,含队友对手 |
| 数据分析 | 只能看胜率 | 自动识别英雄类型胜率、阵容前排影响、伤害占比、连战衰减 |
| 可视化 | 不会做 | LOL 风格 D3 仪表盘,8 张图表交互式 |
四、成果展示
产物 1:lcu_fetch_matches.py —— 可复用的 LCU 战绩拉取脚本
- 自动从 Ux 日志提取 LCU 凭证,无需提权
- 适配新版 GAMHS 接口
- 逐场补拉完整 10 人阵容
- 以后随时重跑
产物 2:match_data.json —— 21 场完整战绩原始数据
每场包含:自己的 KDA/伤害构成/装备/承伤/治疗,以及全部 4 名队友和 5 名对手的对应数据。
产物 3:lol_dashboard.html —— D3 交互式分析仪表盘 v2
8 张图表 + 6 个 KPI 卡片,三段式布局:
| 图表 | 内容 |
|---|---|
| 胜负时间轴 | 21 场色块 + 死亡折线 |
| 死亡散点图 | 死亡 vs 输出,分区标注胜率(63% vs 30%) |
| 伤害占比 | 每场你在队伍总伤害中的占比 |
| 英雄类型胜率 | 6 种类型按胜率排序,AP刺客75%居首 |
| 英雄战绩条形 | 15 英雄战绩总览 |
| 有无坦克对比 | 有坦克58% vs 无坦克38% |
| 队友输出贡献 | 每场 5 人伤害贡献条,金色=你 |
| 连战衰减曲线 | 8/15 十场趋势,四连败区间高亮 |
五、实践经验总结
-
国服 LCU 凭证从 Ux 日志提取最稳:WeGame 以管理员启动会清空 lockfile、屏蔽进程命令行读取,但
LeagueClientUx.log的启动参数行里一定有--app-port和--remoting-auth-token,用正则提取即可。 -
GAMHS 列表接口只返回自己:要拿完整 10 人阵容,必须逐场调
/lol-match-history/v1/games/{gameId}。这是国服特有的坑,国际服教程不会提到。 -
数据分析比数据采集更有价值:拉到数据只是第一步,TraeWork 真正帮上忙的是从 21 场数据里识别出「AP刺客最适合」「有前排胜率高 20 个百分点」「连战第 7 场后断崖」这种靠手动统计根本发现不了的规律。
-
可视化要迭代:第一版仪表盘能用但丑,明确告诉 TraeWork "图表太丑了"之后,它换成 LOL 主题配色、加 hover 效果、扩展到 8 张图,效果提升明显。别怕让 AI 改稿。
-
work不能运行命令,真正干活,还是得用code
六、分享你的实操对话(必填)
- 初始需求 + 脚本生成:【获取LOL对战数据 - TraeWork】 TraeWork - AI 办公平台 | 自动生成PPT/数据分析/深度调研/文档撰写
- 【提取并分析LOL近20局战绩 - TraeWork】 TraeWork - AI 办公平台 | 自动生成PPT/数据分析/深度调研/文档撰写
- 深度分析(英雄类型/阵容/伤害占比)【提取并分析LOL近20局战绩 - TraeWork】 TraeWork - AI 办公平台 | 自动生成PPT/数据分析/深度调研/文档撰写






