python – evernote更新笔记资源
我正在使用Evernote API for
Python创建一个允许用户创建和更新笔记的应用程序,但我无法理解如何有效地更新Evernote资源.这主要发生在我从HTML转换为ENML(Evernote标记语言)时,我正在从img标签创建资源(现在我只考虑图像资源).
我的问题是:如果需要更新笔记的资源,我怎么能告诉他?我已经考虑过将图像数据与所有当前资源的数据进行比较,但这似乎很慢.现在我只为每个img标签创建一个新资源. 我发现的一些有用的资源包括Evernote resources guide和this sample code in the Evernote SDK.任何建议表示赞赏. 解决方法
最好的方法是比较文件的MD5哈希值. Evernote笔记通过MD5哈希跟踪资源.
要查看附加到Evernote注释的文件的MD5哈希值,只需查看标记为“en-media”的ENML元素,标签的形式如下所示: <en-media type="mime-type" hash="md5-of-file" /> 其中mime-type是文件类型,md5-of-file是文件的MD5哈希.要获取注释的ENML,请调用getNote(此处为文档),并确保指定您想要的内容.注释的ENML内容是getNote(a note object)返回的对象的content属性的值. 虽然散列可能很昂贵,但MD5相对较快,计算文件的MD5散列比等待网络下载映像要快. 此外,updateResource method documentation说:
因此,“更新”资源的唯一方法是从注释中删除旧资源并在其位置创建一个新资源.您可以通过从相关注释的resources属性中包含的列表中删除Resource Object来删除资源.要添加新注释,只需将新资源对象添加到同一列表中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |