技术类的文章都是有时效性的,因为有些工具是不断更新的,也许在不久的将来,我用的这些工具就过时了,读者再也找不到了,本文写于2021年1月5日,使用Python 3.8,Evernote SDK for Python 3。
用Python读写印象笔记可以方便我们做一下个人记录自动化,比如每天自动创建时间记录模板,或者定期整理统计自己的时间记录等。
在这里我写介绍如何用Python读取印象笔记,写入留到以后再介绍。
如果你还没有安装Python,可以到Python官方主页下载并安装最新版本的Python 3。
操作印象笔记需要用到一个工具(SDK),官方的Evernote SDK for Python 只支持Python 2,而目前Python 2已经停止更新。所以,我们使用这个测试版的Evernote SDK for Python 3。
另外,你需要一个Dev token,可以到印象笔记开发者模式网页申请一个。具体来说就是,到印象笔记开发者模式,用自己的用户名密码登录,然后点击Create Developer Token。
from evernote.api.client import EvernoteClient
from evernote.edam.notestore.ttypes import NoteFilter
token = "put your dev token here"
client = EvernoteClient(token=token, sandbox=False, china=True)
noteStore = client.get_note_store()
notebooks = noteStore.listNotebooks()
for notebook in notebooks:
if "刷题总结" in notebook.name:
guid = notebook.guid
notebook = noteStore.getNotebook(token, guid)
filter = NoteFilter(notebookGuid=guid)
noteList = noteStore.findNotes(filter, 0, 1)
totalNotes = noteList.totalNotes
offset = 0
maxNotes = 100;
while offset < totalNotes:
noteList = noteStore.findNotes(filter, offset, maxNotes)
numNotes = len(noteList.notes)
endNote = offset + numNotes
print(f"第{offset}至{endNote-1}个笔记:")
for i in range(numNotes):
print(f"{offset + i}: {noteList.notes[i].title}")
offset = offset + numNotes