修复 yuque-exporter 的三个 bug
语雀文档批量导出工具 yuque-exporter 在首次运行、本地文件缺失、redirect 处理等场景下存在崩溃问题,记录定位和修复过程。
语雀文档批量导出工具 yuque-exporter 在首次运行、本地文件缺失、redirect 处理等场景下存在崩溃问题,记录定位和修复过程。
讯飞录音笔云端数据本地备份 讯飞录音笔录音本身在云端,转写、AI 总结、思维导图也都在网页端能看到,但真到需要长期整理时,只靠网页端不太方便:文件分散,账号切换容易混,后续要搜索、归档、再加工也不顺手。 iflytekRecordDownload 就是为这个场景写的一个小工具。它从讯飞录音笔网页端读取云端录音列表,把录音音频、转写文本、AI 总结和思维导图同步到本地。同步后的文件按账号、日期和录音时间组织,适合长期备份。 它解决什么问题 这个工具主要做几件事: 下载每条录音对应的 WAV 音频。 导出转写文本为 Markdown。 同步云端生成的 AI 总结和思维导图。 按不同讯飞账号分目录保存。 按录音当天日期建文件夹,同一天多条录音再按时分秒区分。 自动生成当天的转写合并文档,方便快速回看。 最后得到的目录大概是这样: 1 2 3 4 5 6 7 8 ~/录音笔同步/工作账号/ 2026年05月14日/ 17时26分49秒.wav 17时26分49秒.md 17时26分49秒_AI总结.md 17时26分49秒_思维导图.md 17时26分49秒_raw.json 2026年05月14日_转写合并.md 这个结构的好处是后续处理很简单。音频、转写、总结和思维导图都在同一个时间点下面,不需要再从一堆文件里猜谁和谁对应。 实现思路 讯飞录音笔网页端本身会调用接口读取录音列表和详情。工具没有绕过登录流程,而是让用户先在浏览器里正常登录,然后从开发者工具里复制一次 Copy as cURL。脚本会从这段 cURL 里解析出 X-Session 和 X-User-Id,再用同样的登录态去访问云端接口。 ...
把钉钉DingTalk A1音频导出到本地 做了一个小工具:把钉钉DingTalk录制的 AI 听记完整下载到本地。 钉钉DingTalk是一款很好的个人效率工具,硬件端录制的音频由钉钉通过通义千问Qwen3-235B、DeepSeek-V3-671B满血版大模型 AI纪要总结,除了录音,还有转写、AI 纪要、笔记、章节、分析、关键词、待办。但这些内容平时都散在钉钉app里,想备份、整理、二次处理都不太方便。所以做一个本地导出工具,一次性把这些东西都拉下来。 项目基于这个开源仓库改的: 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli 原项目提供了一个叫 dws 的命令行工具,可以通过钉钉授权访问 AI 听记、文档、云盘、日程等能力,在这个项目基础上加了两个脚本: 1 2 scripts/archive-all-minutes.sh scripts/download-all-minutes-audio.sh 第一个脚本负责完整归档,第二个脚本只下载音频。 一开始只是想把录音下载下来。后来发现听记接口还能拿到更多内容,比如转写原文、AI 纪要、关键词、待办、思维导图状态等,于是就把脚本扩成了完整归档。 DingTalkExport 现在运行: 1 scripts/archive-all-minutes.sh 它会把内容下载到项目根目录下的 download/ 文件夹。每条听记一个目录,目录名用钉钉听记的创建时间,比如: 1 download/20260507_65871790/ 目录里会有这些文件: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 audio.mp3 transcription.json transcription.tsv summary.json ai-summary.md notes.txt analysis.txt chapters.tsv keywords.json todos.json info.json mind-graph-status.json audio-url.json list-item.json 其中 audio.mp3 是录音,transcription.tsv 是整理过的转写文本,ai-summary.md 是 AI 纪要,notes.txt 和 analysis.txt 是从纪要里拆出来的笔记和分析内容。 ...
用iOS快捷指令+备忘录做了一套免费、纯原生的闪念记录系统:桌面小组件一点,弹出输入框,语音输入转文字,自动追加进当天的备忘录。零成本,丝滑。 一、系统逻辑 每天00:05,一条定时快捷指令自动在备忘录指定文件夹里创建以当日日期命名的笔记,比如「2026年04月25日记录」。 有闪念时,点桌面小组件 → 弹出输入框 → 语音听写或键盘输入 → 点完成 → 文字自动追加到当天备忘录末尾。全程无需打开App,够快,够轻。 旧版快捷指令逻辑如下图,查找条件只有一个:名称包含当前日期。 旧版的快捷指令 二、升级之后翻车了 从iOS 26开始,这套流程开始抽风。 症状很典型:语音输入完、文字转写好,到「追加」这一步时,突然弹出满屏备忘录列表——快捷指令找不到目标备忘录,文字追加失败,白说了。 第一次出问题,重新创建一遍快捷指令就解决了。升级到iOS 26.4后问题又来,这次重建无效,而且时好时坏,完全没有规律。反复折腾了N次,准备掏钱买flomo了。 三、马桶上找到了答案 早上蹲马桶刷手机,无意中发现快捷指令的「查找备忘录」模块里悄悄多了几个筛选选项—— 新系统中加入了文件夹选项 之前只能按名称查找,现在多了文件夹、标签、创建日期、上次修改日期。问题大概率出在这里:一千多条备忘录全局查找,可能存在超时,导致偶发性找不到目标。 解决方案:查找范围限定到指定文件夹,同时增加创建日期条件(当日 00:05)。两个条件加上去,快捷指令稳了。 修改后的快捷指令 免费方案续命成功,暂时不用给flomo交钱了。🫡
看完《追风筝的人》,这本书是很久以前买的,以至于在淘宝、京东、当当的购物记录中找不到确切的购买时间。 《追风筝的人》 版次:2006年5月第1版 印次:2015年5月第85次印刷 这本书作者是阿富汗裔美籍作家卡勒德胡赛尼,译者李继宏,讲述的2001年返回阿富汗去寻找自己同父异母侄子的事情,中间大篇幅穿插逃离阿富汗到美国之前的故事。 一、人物关系图 手搓了一个人物关系图 做了一个人物关系图。 二、故事时间线 1933年主人公父亲出生,5年前阿里出生。 1963年主人公阿米尔出生,母亲难产去世。普什图人。 1964年冬哈桑出生,不满七日母亲与一群江湖艺人跑了。哈扎拉人。 1973年阿富汗政变。 1974年,主人公父亲请医生给哈桑治疗兔唇。 1975年冬,最后一次看到哈桑追风筝,目睹了哈桑被阿塞夫伤害。哈桑和父亲阿里离开。 1979年俄国坦克在喀布尔大街上。 1981年3月,辗转逃离阿富汗,到达美国。 1983年,主人公阿米尔高中毕业,收到父亲送的二手车。童年秋天到专科学校上学。 1984年夏天,父子俩开始跳蚤市场生意,期间认识将军的女儿索拉雅,主人公的妻子。父亲肺癌出院后给儿子去提亲,婚后一个月父亲去世。 1985年,州立大学主修英文,家具仓库保安工作;妻子索拉雅同校主修教育。 1988年,俄国撤军。 1989年,主人公第一部关于父与子的书籍出版。没有自己的孩子,搬家与岳父母拉开距离。 2001年6月,应拉辛汗要求回阿富汗找回哈桑的儿子索拉博,被告知哈桑是同父异母的弟弟。拉辛汗告知的事情: 1984年,阿里被地雷炸死。 1986年,哈桑放弃已有自己的生活,返回帮忙照看主人公家原来的豪宅。 1990年,哈桑母亲莎娜芭年老回来,哈桑照顾母亲康复。哈桑儿子索拉博出生。 1994年,哈桑母亲莎娜芭去世。 1995年,内战开始。 1996年,塔利班掌权。 1998年,哈桑抗议塔利班官员占领主人的豪宅,夫妻双双被枪杀。 寻找侄子索拉博最后一关,与阿塞夫1V1 PK,侄子用其父亲哈桑教授的弹弓救了主人公。 解决拯救侄子带回美国认养的难题,侄子害怕再次被迫害,在酒店浴室割腕自杀,抢救回生命。 2001年8月,带侄子回到美国家中,帮助侄子恢复正常生活,最后在放风筝的尝试中看到了孩子的微笑。 三、勾画了些句子 爸爸说:“不过首先,你得知道一件事情,阿米尔,那些白痴大胡子不会教给你任何有价值的东西”。 爸爸双眼坚定地看着我的眼睛,仅仅这样,我就止住了笑声。 在我生命的大部分时光,我对爸爸敬若神明。可是那一刻,我恨不得能扯开自己的血管,让他那些该死的血统统流出我的身体。 哈桑在哭,阿里将他抱紧,轻轻地抚摸着他。后来我告诉自己,我没有嫉妒哈桑,一点都没有。 我希望自己身上也有类似的残疾,可以乞换来爸爸的怜悯。 看到爸爸眼里的光芒消失了,接着是一阵令人不适的沉默。 当他站起身来,我从他松弛的肩膀看出,我与生俱来的那种熟悉的生活已经一去不返了。 对我来说,美国是个埋葬往事的地方。对爸爸来说,这是个哀悼过去的地方。 如今,美国是爸爸送给阿米尔的最后一件礼物。 生活已然在前进,留下爸爸在后面。 我的理由是:也许在某个地方,有某个人,因为某件事,决定剥夺我为人父的权利,以报复我曾经的所作所为。 也是在这片土地上,我曾为了得到父亲的爱苦苦奋斗。 几乎见不到有任何成年男子在他们身边——战争把父亲变成阿富汗的稀缺物品。 重返喀布尔,犹如去拜访一个多年未遇的老朋友,却发现他潦倒凄戚,发现他无家可归、身无分文。 他们试图抬起她,她又叫又踢。只要我还有一口气在,就永远不会忘记那声惨叫。 四、关于剧情 故事情节从开篇一直到2001年6月之前,感觉都是在真实的阿富汗实景,到了主人公与阿塞夫1V1 PK的这一段,就和典型的美国式影视剧的发展一样一样的了——两个人PK的关键节点,站在旁边的小孩索拉博使出绝招——弹弓,来帮助主人公取得胜利,这一下就跳出书中情节,回过神来这就是个剧。
刘震云《咸的玩笑》。 赶在2025年结束前的几天读了刘震云的《咸的玩笑》——今年的第一本纸质书,读过这个作者的上本书是《一句顶一万句》。 大家都辛苦了 世界各地,不同的街道上, 街上走着的每个人,内心都有伤痕。 大家都辛苦了。 结构挺有意思 从目录来看在正文一和正文二中间是三十三章的题外话。刚开始看正文一中说到名叫长顺的和尚智明,和《天之下》的明不详有些联想,以为这本书就是写这个和尚的,结果正文一接着的题外话第一章就不是这个和尚了,而是写名叫杜有财的杜太白的故事。 题外话结束后接着的正文二,回到现实中,和《大话西游》最后的结尾有点像,小说中杜太白给孩子们起的悉尼、巴黎、开普敦的名字在泰安听到了。 书中有意思的句子 智明:跟出家人说家,让我无言以对啊。 智明:不让结婚,就不能生孩子;百年之后,人不就没了?不让杀生,百年之后,不成动物的世界了?那时你们将佛法传给谁呢?传给猪马牛羊吗? 杜太白之道,往事就这么过去了,但往事并不如烟。 家庭的悲剧,是一家人的软弱,和一个人的无耻造成的。 正因为大家是贩夫走卒、乌合之众,杜太白虽乌合,又不众,才显得鹤立鸡群。 你可以认真,也可以不认真;不认真的最好方式,最不费心的方式,就是跟着习惯认真。 无意识中有意识,也是杜太白去不了纽约、巴黎和伦敦,便让巴黎、纽约和伦敦来到了他的面前。 人们分歧再大,归结到钱上,很快就统一了。 货币,也是使世界分裂的重要原因。 又说“这话,倒是一句顶一万句呀”。 是谁出的题这么难,到处都是正确答案? 猜的到的一个故事线 在杜太白被网络讨伐时,裁缝铺的赤脚大仙发布的讨伐檄文那一段,猜测到是曹五车写的,就他俩还在学校工作的时候一起PK过古诗文。 不太理解的一个地方 在写到秦东峰跳锅炉那一段,文中写的是“老李示意门卫,让杜太白进去”,这地方应该是秦东峰进了厂子车间,怎么是杜太白进去了?? 只是把这本书读完了,仅仅是读完了,更深的意味,按照书中说的“评毬不到”。 ——都是在延津,不知道杜太白听到罗长礼的声音了没有?
YouTube视频账号Lex Fridman发布了一个与telegram CEO的访谈视频,时长4小时35分,看了访谈视频的一部分,时间太长,没有看完。 视频制作的很好,提供了英语、法语、俄语、乌克兰语的音轨和字幕,中文字幕通过YouTube即时翻译很硬,从Lex Fridman网站找到了字幕srt文件,找工具翻译了一下,上传到了GitHub。 Google AI studio显示需要62564 tokens,无法运行直接翻译。 chatGPT给出的文件下载地址显示文件已失效。 Google Gemini 可以半自动翻译。 最后,chatGPT分段输出,整合到markdown文件中,完成。
很久没有进电影院了,临开学和小娃去电影院,看了成龙和梁家辉主演的《捕风捉影》,看完片子才知道不是成龙导演,难怪套路不一样,还是很好看的。 《捕风捉影》海报,图片来自网络。 电影里的几个点还是很不错的: 电影里面AI时代的警察,被反派反制后老派警察的传统手段起了关键作用。联想到现实生活中现在各个行业都在高唱AI,但不少的所谓行业AI翘楚还处于PPT阶段或者搞宣传片阶段,传统基础功没有搞起来,就要AI“革命”自己的行业。 梁家辉的演的狠劲够狠,看后面的片花,演完一场戏现场工作人员都很担心他的安全。 还是说到AI,片中有个部分是关键抓捕阶段,警局的女上司要求关闭AI要自己人工指挥,还是对这玩意不是很放心,或者害怕再次被反派把自己的AI干掉。 用成龙那个警察角色的传统工作方式去优化AI,就是新旧结合了。
用Python开发的图片批量处理工具,支持智能调整尺寸、清除EXIF信息和批量重命名功能。
2025年暑假的旅行记录,从甘肃出发前往张家口富龙小镇体验自行车速降,再到成都、武威、张掖、甘南等地,记录了一路上的见闻和体验。