讯飞听见批量导出
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的指南,帮我安装 @user_b4692632/iflyrec-bulk-export 这个技能。
技能介绍
自动化导出的痛点与破局
手动在讯飞听见网页上逐条下载录音和转写文档是一项机械且耗时的工作。当面对数百条记录时,传统的浏览器自动化方案(如模拟点击)极易失效:单页应用(SPA)的异步渲染、弹窗拦截以及 DOM 选择器漂移,会导致脚本在处理几百条数据时卡死数小时。本技能放弃了脆弱的页面操作,转而采用纯 API 直连的方案,通过逆向分析真实接口,直接请求数据,从而彻底消除了前端环境带来的不确定性。
核心工作流程
该技能的工作流分为环境准备、接口请求与文件落地三个阶段:
- 获取登录态:脚本通过 Chrome DevTools Protocol (CDP) 连接到用户本地已登录且开启远程调试的浏览器,自动提取有效的
Cookie,无需用户手动复制。 - 接口批量拉取:
- 调用列表接口 /XFTJWebAdaptService/v2/hjProcess/list/optimized 获取录音记录,并利用游标(scrollDownQueryParam)进行分页遍历。
- 并发请求音频直链接口与转写接口,分别下载 .mp3 音频和 .docx 文字稿。
- 规范化命名与交付:从记录中提取录制时间,为文件统一添加
YYYY-MM-DD_前缀,并智能剔除文件名中重复的日期串。最终,所有文件平铺输出至本地目录,同时生成一份包含日期、原名和文件大小的_manifest.txt清单。
工程实践中的避坑指南
在实际开发与使用中,有几个关键边界需要特别注意:
- CDP 启动参数:浏览器必须以
--user-data-dir参数启动,否则无法读取到用户登录态,接口会直接返回userId can not be null。 - 日期解析陷阱:正则表达式必须严格约束年份(如
19xx或20xx),否则类似01068366123的手机号会被误判为日期格式。 - 分页死循环:在遍历列表时,必须严格判断
hasMore状态或空数组,若游标对象未清空会导致请求死循环。 - 伪接口陷阱:讯飞官网文档中提供的部分下载链接(如
/api/v1/record/download/{id})实为占位符,实际返回首页 HTML,必须使用抓包获取的真实路由。
使用场景
- 记者整理采访录音,需批量导出MP3和转写文档完成撰稿
- 研究人员收集语音数据后,批量保存音频与逐字稿用于分析
- 企业法务归档会议录音,需按日期统一命名并生成下载清单
- 播客创作者管理多期节目源文件,自动下载音频与文字稿备份
适合人员
- 记者/播客主播:定期处理大量采访录音,需要快速批量导出音频和文字稿,避免逐条手动下载的繁琐操作
- 数据研究员:收集实验语音样本后需统一保存音频与逐字稿,要求文件命名规范且带元数据清单便于后续检索
- 企业行政人员:负责归档各部门会议录音,需要按录制时间自动排序命名并生成可追溯的下载记录文件
- 自由转写员:承接多平台转写任务后需批量下载原始音频和成品文档,要求支持断点续传和cookie失效重试机制