调试比成功更值钱
今天花了大半天调一个 B站字幕转写的 workflow,最后跑通了。但说实话,通的那一下反而没那么兴奋——调试过程中学到的东西,比"终于成了"值钱多了。 问题出在哪 工作流是自动下载 B站视频、提取字幕、调用 Whisper 转写的流程。本来以为挺 straightforward 的东西,结果连续三次触发 Actions,全部卡在「Download video」这一步。 一开始以为是网络问题,后来以为是权限问题,再后来怀疑是 yt-dlp 版本太旧。都不是。 真正的问题是 cookies 格式。 yt-dlp 需要 Netscape 格式的 cookies 文件,而 Playwright 导出的是 JSON 格式。两者看起来都是 cookies,但 yt-dlp 只认识前者。同时,Playwright 导出的 session cookie 的 expires=-1,导致 yt-dlp 直接跳过这个 cookie——所以即使用了 JSON 文件,实际上有效登录信息是缺失的。 ...