起因
我一直有个困扰:想到什么就想记下来,但打开印象笔记、新建笔记、填标题、选笔记本……这一套流程下来,灵感早跑了一半。
最近我把印象笔记的 API 接入了我的 AI 助手(WorkBuddy),现在只需要说一句话,笔记就自动存好了。这篇文章记录一下怎么用。
能做什么
接入之后,我可以对 AI 直接说自然语言,它会自动调用印象笔记 API 完成操作:
记录类:
- 「记一下:今天开会讨论了预算方案」→ 直接创建笔记,存入默认笔记本
- 「保存这个链接:https://...」→ 自动抓取网页标题和摘要,存成链接笔记
查找类:
- 「查我最近的笔记」→ 列出最新 20 条笔记的标题和时间
- 「搜索笔记里关于"预算"的内容」→ 全文搜索,返回匹配结果
整理类:
- 「给刚才的笔记加个标签"重要"」→ 自动创建标签并打上去
- 「删掉那条测试笔记」→ 移入回收站
- 「查我的笔记本」→ 列出所有笔记本名称
整个交互都是自然语言,不需要打开 App,不需要点菜单。
技术实现
核心是三个部分。
第一步:申请印象笔记开发者 Token
去印象笔记开发者页面申请一个开发者 Token,格式类似 S=s5:U=xxxxx:...。这个 Token 相当于你的账户凭证,存在本地配置文件里,不需要每次登录。
第二步:Python 操作脚本
基于 evernote3 SDK 封装了一个脚本,支持以下主要命令:
python yinxiang_helper.py create_note "标题" "正文" "标签1,标签2"
python yinxiang_helper.py save_link "https://..."
python yinxiang_helper.py search_notes "关键词"
python yinxiang_helper.py list_notes
python yinxiang_helper.py add_tag <note_guid> "标签名"
python yinxiang_helper.py delete_note <note_guid>
有一个坑值得记录:evernote3 这个 SDK 在 Python 3.11 上会直接报错——AttributeError: module 'inspect' has no attribute 'getargspec'。原因是 Python 3.11 移除了早已废弃的 getargspec 方法。解决办法是在调用 SDK 之前加一行兼容补丁:
import inspect
if not hasattr(inspect, 'getargspec'):
inspect.getargspec = inspect.getfullargspec
一行代码解决,不需要降级 Python,也不需要换 SDK。
第三步:AI Skill 配置
在 WorkBuddy 里创建一个 Skill,描述什么样的用户意图应该触发哪个脚本命令。AI 读取这个配置后,就能准确理解「记一下」「查笔记」这类自然语言,映射到对应的脚本调用。
使用感受
用了一段时间,最明显的变化是记录的摩擦感降低了。
以前想记东西,要有意识地"切换到记录模式"——打开 App、建笔记、写内容、加标签。现在直接说出来,AI 处理完告诉我「已保存」,整个过程不打断当前的思路。
链接收藏这个场景尤其好用。以前收藏链接要手动起标题,现在脚本自动抓取网页标题和摘要,保存下来的笔记比手动整理的还整洁。
目前的局限
几个暂时做不到的事:
- 编辑已有笔记:API 支持,但脚本目前只做了新建
- 图片 OCR:需要额外的 OSS 上传流程,复杂度高,暂时跳过
- 笔记内容排版:当前存入的是纯文本,Markdown 格式不会完整渲染
小结
这套方案的核心思路是:用 API 打通工具,用 AI 消灭操作步骤。
印象笔记有成熟的开放 API,Python SDK 虽然老了但修一下还能用。接入之后,日常记录的门槛降到了接近零。如果你也在用印象笔记,可以试试这个思路。
鸣沙石的数字采集