Экспорт тегов ТОЛЬКО из Evernote?

Я нашел это: Использование Applescript для экспорта списка URL-адресов на основе по тегам?, отличный ресурс. Оригинальный скрипт (от Veritrope) немного устарел, но отлично работал для экспорта заголовков заметок Evernote. Я думал, что будет относительно легко изменить этот сценарий, чтобы получить ТОЛЬКО теги в моих блокнотах в CSV. Но так как я очень любитель писать сценарии, и к тому же самоучка, я не мог заставить это работать.

Может кто-то указать мне верное направление? Моя конечная цель — некоторое обслуживание тегов, потому что теперь у меня так много тегов, что они уже не очень полезны. Поэтому мне просто нужен список тегов - НЕ обязательно связывать с заметками. Один столбец данных.

Спасибо, стеки.


person SteveS    schedule 07.07.2015    source источник
comment
может кто-нибудь объяснить, почему за это проголосовали? этот и мой последний вопрос были подвергнуты резкой критике без каких-либо объяснений. это сообщество становится все более нетерпимым; я не понимаю. я просто пытаюсь учиться.   -  person SteveS    schedule 20.07.2015
comment
Ваш вопрос был отклонен, потому что вы не просили конкретный ответ на конкретный вопрос. Вопросы вида Как мне сделать X? или Можете ли вы указать мне в правильном направлении? обычно не так хорошо идет на StackOverflow. Ожидается, что вы проведете исследование и постараетесь найти решение самостоятельно, прежде чем задавать вопрос здесь. stackoverflow.com/help/how-to-ask   -  person matthewayne    schedule 29.07.2015
comment
Благодарю. мальчик, это сообщество трудно понять!! я на самом деле провел массу исследований по этому поводу и даже пытался адаптировать сценарии, которые нашел сам. наверное, я просто не так спросил. формулировка, Лана. в любом случае, спасибо за сценарий ниже. собираюсь попробовать это сейчас.   -  person SteveS    schedule 30.07.2015


Ответы (1)


Вот программа AppleScript, которая сделает то, что вы хотите сделать:

tell application "Evernote"
    set tagList to {}
    set allNotebooks to every notebook
    repeat with currentNotebook in allNotebooks
        set allNotes to every note in currentNotebook
        repeat with currentNote in allNotes
            set noteTags to (the tags of currentNote)
            repeat with currentTag in noteTags
                if tagList does not contain name of currentTag then
                    set the end of tagList to name of currentTag

                end if
            end repeat
        end repeat
    end repeat
end tell

set filePath to (path to desktop as text) & "Evernote Tags.csv"
set output to ""
repeat with currentTag in tagList
    set output to output & currentTag & ", "
end repeat

set theResult to writeTo(filePath, output, text, false)
if not theResult then display dialog "There was an error writing the data!"

on writeTo(targetFile, theData, dataType, apendData)
    -- targetFile is the path to the file you want to write
    -- theData is the data you want in the file.
    -- dataType is the data type of theData and it can be text, list, record etc.
    -- apendData is true to append theData to the end of the current contents of the file or false to overwrite it
    try
        set targetFile to targetFile as text
        set openFile to open for access file targetFile with write permission
        if apendData is false then set eof of openFile to 0
        write theData to openFile starting at eof as dataType
        close access openFile
        return true
    on error
        try
            close access file targetFile
        end try
        return false
    end try
end writeTo
person matthewayne    schedule 29.07.2015