☰
原神抽卡记录导出工具:把全部祈愿历史存下来,还能多账号统计
2026/10/20 4:36:37 网站建设 项目流程

原神抽卡记录导出工具:把全部祈愿历史存下来,还能多账号统计

【免费下载链接】genshin-wish-exportEasily export the Genshin Impact wish record.项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export

原神抽卡记录导出工具 genshin-wish-export 是一款免费开源的桌面程序,可以把你账号里全部祈愿历史(而不只是游戏内能看到的近几个月)拉取下来、合并去重后保存在本机,并以饼图展示各池的出货分布,支持导出 Excel 与 UIGF 标准 JSON。它完全在本地运行,数据不出你的电脑,适合想永久存档抽卡记录、评估保底进度、管理多个账号的玩家。

这个工具能帮你做什么

游戏自带的"历史记录"页面只能翻看有限时间段,也不提供任何统计:哪个角色抽了几次才出、平均多少抽一个五星、当前池子的保底攒了多少抽,这些都得自己算。genshin-wish-export 把这部分补上了。

数据加载成功后,界面会为每个祈愿类型生成一张独立的统计卡片,每张卡片包含一个饼图和一组数字:

统计维度内容
总抽数与时间范围该池累计抽取次数、首抽到最后一次抽取的日期
星级分布5星 / 4星 / 3星 各自的次数与占比
保底进度距离下一次出 5 星还差多少抽
5星历史每个 5 星条目后面括号里是"从上一次 5 星开始的间隔抽数",5 星平均出货次数也有单独汇总

三个卡片分别对应角色活动祈愿、常驻祈愿、新手祈愿(新手池可以在设置里隐藏)。所有数字都来自本地合并后的完整数据,因此比你手动翻游戏记录可靠得多。

数据从哪里来:三种获取 authKey 的方式

祈愿记录接口需要一个临时的访问凭证(authKey,有效期很短)。工具提供三条路径拿到它,正常情况下第一种就能成功:

  1. 读取游戏日志(默认):从游戏本地的output_log.txt与浏览器缓存中解析出带有 authkey 的链接,src/main/getData.js里的readLog()负责这个过程。如果解析失败,工具会提示日志文件位置或读取失败的原因。
  2. 本地代理模式:界面上的"选项"菜单可以启动一个内嵌的轻量 mitm 代理(src/main/module/node-mitmproxy.js),临时把系统代理指到本机端口,捕获游戏网页发出的带 authkey 请求,用完自动恢复代理设置。日志方式不可用时(比如换了游戏目录)可以走这条路。
  3. 手动粘贴链接:工具支持把你抓到的完整链接直接粘贴进对话框提交,getData.js会从中提取 authkey 并识别你所在的服务器区域(国服 / 海外服,接口域名随之切换)。

拿到凭证后,工具按池子分页拉取记录(每页 20 条,每 10 页自动停顿一次避免频率过高),网络出错会自动重试。每次拉取到的新记录会和本地旧数据按记录 id 对齐合并(mergeData()/mergeList()),旧数据不会丢,也不会重复。

关键前提:加载前必须先打开游戏的"祈愿 → 历史记录"页面,让游戏生成新的 authKey。这是绝大多数"加载失败"问题的根源。

数据存哪儿了,又该怎么备份迁移

全部数据以gacha-list-<UID>.json的命名保存在工具目录下的userData文件夹里,每个账号一个文件。每次导入或更新前,旧版本文件会先复制一份到userData/backup/<UID>/下做版本备份。

导出与恢复主要有三条路:

  • Excel(最直观):点"导出 Excel",每个祈愿池生成一个独立工作表,列为时间、名称、类型、星级、累计抽数、距上次五星的间隔、备注;5 星行用橙色、4 星用紫色加粗标出,文件名自动带时间戳。
  • UIGF 标准 JSON(生态互通):设置面板里可选 v4.1 或 v3.0 格式导出(v4.1 支持把本地全部账号打进一个文件),文件会自动从 uigf.org 拉取物品 id 字典补齐item_id字段,这样能直接喂给 UIGF 生态里的其它统计站点。
  • 本地 JSON 互导:导入对话框能自动识别三种文件——工具自身的gacha-list-*.json、UIGF v3.0、UIGF v4.1,按id排序后合并入库;换电脑时把userData里的文件拷回来即可。

从 0 到 1 跑起来

工具基于 Electron 编写,需要在 Windows 64 位系统上运行。

普通用户:下载发布页里最新的Genshin-Wish-Export.zip,解压即用,无需安装。

开发者(或想从源码构建):

git clone https://gitcode.com/GitHub_Trending/ge/genshin-wish-export cd genshin-wish-export yarn install yarn dev # 开发模式(Vite 热更新) yarn build # 打包可执行程序

首次使用的完整流程:

  1. 启动游戏,进入"祈愿 → 历史记录"页面并停留;
  2. 启动工具,点左上角的"加载数据";
  3. 观察状态行:成功时会显示上次更新时间,失败时会有明确的提示文案;
  4. 加载成功后即可浏览饼图,随时点"导出 Excel"或到设置里导 UIGF。

如果日志方式读不到 authKey,界面会出现"解决方案"按钮,可以一键打开游戏缓存文件夹手动清理,或改用代理模式重试。

多账号管理与其他设置

界面顶部"加载数据"按钮旁边的"+"按钮用于添加新账号:游戏内切换到另一个角色后,保持祈愿历史页面打开,再点一次加载即可,之后右上角的下拉框可以在各账号间切换查看。

设置面板(右上角"选项")里还能调整:

设置项作用
界面语言13 种语言可选,语言包是src/i18n/下的 JSON 文件,改起来门槛很低
游戏版本识别自动 / 国服 / 海外服 / 云原神(仅中文版显示),决定去哪个日志路径找 authKey
拉取完整历史默认只增量拉新抽;打开后每次都重新拉全量(耗时更长)
隐藏新手祈愿卡片区不再显示新手池统计
自动更新启动时检查新版本

常见问题排查

现象多半原因处理办法
提示找不到 authKey / 日志游戏没停在祈愿历史页面,或日志路径不在预期位置重新打开游戏内历史记录后再试;或在设置里手动指定游戏版本
authkey timeoutauthKey 过期(几分钟就失效)点"解决方案"按提示清理缓存,或重启游戏刷新页面
代理模式没反应系统代理被其他软件占用检查系统代理配置,重启工具;代理只在捕获瞬间开启,结束后自动还原
导入 JSON 报格式错误文件既不是本地备份也不是合法 UIGF确认文件来源,用设置里的 UIGF 导入入口而不是直接拷文件
导出文件打不开磁盘空间不足或路径含特殊字符换个保存位置重试

源码结构与技术栈,想参与的话从哪里下手

技术组合是 Vue 3 + Element Plus 做界面,ECharts 画饼图,Tailwind CSS 管样式,Vite 构建,Electron 打包,MIT 协议开源。

模块位置职责
主进程入口src/main/main.js窗口管理、退出时清理代理
数据拉取与合并src/main/getData.js日志解析、代理捕获、分页请求、本地合并
Excel 导出src/main/excel.js用 ExcelJS 生成带样式的多工作表文件
UIGF 导入导出src/main/UIGFJson.js校验 schema(src/schema/下三份 JSON Schema)、物品 id 字典、版本备份
界面src/renderer/App 主视图、饼图组件、设置面板
语言包src/i18n/13 种语言的 JSON,翻译改进可以直接提 PR

如果你会 Vue 或 Node.js,从语言包和界面文案入手是最快的参与方式;想动核心逻辑,getData.js里的拉取与合并流程都有清晰的函数划分,配合src/schema/的 JSON Schema 就能保证数据结构不出错。

【免费下载链接】genshin-wish-exportEasily export the Genshin Impact wish record.项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询