2015-04-26 1 views
0

Я использую систему на основе GTD в Evernote, в которой каждый проект имеет тег. Некоторые из моих проектов неактивны и не имеют «следующего действия» - т. Е. В теге нет прикрепленных примечаний. Вчера я случайно нажал Delete unused Account tags, и ни одна из моих резервных копий не потеряла данные; Я очень грустный кролик.Как я могу создать резервную копию неиспользуемых тегов Evernote?

Как я могу сделать резервную копию этих неиспользуемых тегов в будущем? Я бы предпочел ENEX, но я доволен, например, текстовый список имен.

Я использовал меню экспорта «Evernote», но он, оказывается, экспортирует заметки и их теги, а не неиспользуемые теги. Я пробовал ENScript.exe (ENScript exportNotes /q any:) и делает то же самое: примечания & их теги, но никаких других тегов. Единственное, что мне осталось попробовать - это установить SDK и «опрокинуть мой собственный» вызов NoteStore.listTags, который я не могу точно сказать, будет работать, учитывая предыдущие два результата.

Есть ли способ экспортировать неиспользованные теги из Evernote? Может ли API это сделать?

ответ

1

Да, вы можете, через API. Используйте метод listTags, чтобы получить все теги в своей учетной записи Evernote, в этом случае будут перечислены теги, которые «прикреплены» к заметке и тегам, которые не привязаны к заметке. Затем вы можете сравнить это с заметками, которые «прикреплены» к заметкам, вызывая listTagsByNotebook на каждом ноутбуке (вы можете получить список всех ноутбуков, вызвав метод listNotebooks). Облако API Evernote является другим, что их локальные интерфейсы сценариев (например, AppleScript и VBScript)

listTags documentation

listNotebooks documentation

listTagsByNotebook documentation

Пример ниже в Python:

from evernote.api.client import EvernoteClient 
#setup Evernote Client 
client=EvernoteClient(token="S=s432:U=489be66:E=1545a0ad962:C=14d0259ad08:P=1cd:A=en-devtoken:V=2:H=e3e3c9ea30c6879c54918794fad333ae", sandbox=False) 
#get note store object to call listTags, listTagsByNotebook, and listNotebooks on 
noteStore=client.get_note_store() 

tags=noteStore.listTags() #get list of all tags 
allTags = [tag.name for tag in tags] #put all the names of the tags in a list 

#get a list of all notebooks 
notebooks = noteStore.listNotebooks() 
#get all tags for each notebook and store them in a list 
attachedTags = [] 
for notebook in notebooks: 
    notebookTagList = noteStore.listTagsByNotebook(notebook.guid) 
    notebookTagNames = [tag.name for tag in notebookTagList] 
    attachedTags+=notebookTagNames 

#compare lists and print "unattached" tags 
print("\nThe following is a list of \"unattached\" tag names in your Evernote account:") 
for tag in allTags: 
    if tag not in attachedTags: 
     print(" *%s"%tag) 
print("") 

Вы можете получить идентификатор разработчика для вашего аккаунта производства (Evernote имеет песочницу для разработчиков тоже) здесь: https://www.evernote.com/api/DeveloperToken.action

Evernote SDKs находятся на Github: https://github.com/evernote

Документация по адресу: https://dev.evernote.com

API эталонным: https://dev.evernote.com/doc/reference