java - 如何从 Evernote API 获取带有图像的笔记?

标签 java evernote

我目前使用以下代码从 Evernote WebClipper API (Java) 获取笔记。这让我得到了其中有文字的笔记。但是,某些笔记中可能包含图像。我想访问这些图像(资源)。我该怎么做?

NotesMetadataList nl = evernoteAccount.getRequestedNotes(words);
for (NoteMetadata note : nl.getNotes()) {
  logger.debug("GUID: " + note.getGuid());
  logger.debug("Title: " + note.getTitle());
  logger.debug("Content: " + note.getContent());
}

最佳答案

Evernote 笔记可以包含称为资源的附件,其中包括图像。要下载资源,您有 2 个选项:

  1. 解析“en-media”标签图像的注释内容。该标签将具有属性“type”和“hash”。类型将包含 MIME type of the file作为资源附加到注释中,“散列”是文件的 MD5 散列。如果文件类型是您想要检索的类型,请调用 getResourceByHash在笔记所在的笔记存储上,传递笔记的 GUID、文件的哈希值以及分别包含不包含数据、识别和替代数据的 true/false。
  2. 通过笔记中的元数据下载与笔记相关的资源。每个注释都有一个“资源”属性,它是附加到注释的所有资源的列表。列表中的每个项目代表一个资源,并且具有“mime”和“guid”属性。您还可以检查attributes.fileName 属性以获取资源的文件名。如果资源的“mime”、文件名或其他属性符合您的下载标准,您可以使用getResourceData包含笔记的笔记存储上的方法,通过传递资源的 GUID(不是笔记的 GUID)来下载文件。

来源:
Evernote API 引用:https://dev.evernote.com/doc/reference/ Evernote 资源/附件:https://dev.evernote.com/doc/articles/resources.php Evernote 标记语言 (ENML):https://dev.evernote.com/doc/articles/enml.php

关于java - 如何从 Evernote API 获取带有图像的笔记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31911655/

相关文章:

java - java中动态参与方数量的障碍

JavaFX 从模态窗口表单填充主屏幕上的 TableView

java - 在 Android TimePicker 对话框 fragment 中显示 12 小时格式

Java:添加并行进程和简单写入文件

java - 在没有 CSVReader 的情况下将 CSV 文件导入 JTable

ios - 如何在 iPhone sdk 中导入 Evernote 中的图像

当应用程序未打开时,Applescript 使用 Evernote 的 "find notes"动词给出错误

c++ - EverNote API 编译错误

python - 印象笔记更新笔记资源

javascript - Evernote JS SDK - 能否构造 NoteFilter 来过滤不包含 tagGUID 列表的笔记?