如果看过上一篇博客的朋友可能会好奇我是怎么下载到 ChatGPT Cove 的录音的, 难道是用录音机或者录制软件录制的声音吗? 这也不失为一种方法, 但是也不是很方便. 本文介绍另外一种方法.

观察

首先我们打开 ChatGPT 的官网, 点击 F12 打开 DevTools, 然后点击 Network 标签. 按 Ctrl+R 刷新页面, 然后给chatgpt发送一条消息, 点击播放按钮, 点击 size 来排序, 通常来说, 语音文件的大小会比文本文件大很多.

chrome-dev-tools

不难看出, 图中的 synthesize 就是我们要的文件.

单击, 可以看到文件的 Preview 标签, 里面是一团乱码, 因为是音频文件, 这当然是正常的.

方法 1 - 利用 Base64 解码网站

copy-response

如图, 复制 Response 的内容, 我们查看剪贴板可以看到一些信息, 这个 Response 使用 Base64 编码, 音频文件类型是 acc, 所以我们只要利用这个网站, 把剪贴板的内容粘贴进去, 就可以得到音频文件了. 注意这个网站下载下来的文件需要修改后缀名, 从 bin 改成 acc.

方法 2 - 利用 Override Content 选项

上述方法不好的点就在于, Chrome的开发者工具中网络选项卡下复制内容copy response似乎是有长度上限的, 这就是说, 像我前一篇blog中的文章对应的base64编码是无法复制出来的, 而我当时的解决方法是保存为 HAR 文件再去复制解码.

但是这个过程也是比较麻烦的, 主要是手动复制太过麻烦.

所以, 我们可以利用 Override Content 选项来解决这个问题.

chrome-overrides

首先,先选择 Sources > Select folder for overrides, 然后选择一个空文件夹, 然后点击选择文件夹.

chrome-override-content

然后回到 Network 选项, 点 Override Content.

audio-in-explorer

打开所在的文件夹, 把文件重新命名为 audio.acc 就可以播放了. (浏览器已经做好base64解码工作, 直接播放即可)

方法 3 - 利用 Python 解析 HAR 文件

有空再写吧^^