Comments 17
А я сделал всё на костылях, получил Oauth вручную вот по этой статье: api.yandex.ru/oauth/doc/dg/tasks/get-oauth-token.xml (так и не понял, где подводные камни). Загружаю изображения POST запросом на api-fotki.yandex.ru/post/?oauth_token=token. Для продакшена такое не подойдет, но для самописной утилиты вполне норм.
Сделал 3 скрипта, один загружает изображения через контекстное меню, второй — загружает область экрана по command+shift+4 и третий — для лайтрума, чтобы загружать изображения через export.
Сделал 3 скрипта, один загружает изображения через контекстное меню, второй — загружает область экрана по command+shift+4 и третий — для лайтрума, чтобы загружать изображения через export.
+1
Точно то же, что вы написали, только для Aperture bitbucket.org/ellersseer/apya
0
Неплохо, возьму на заметку. Но от использования Апертуры меня останавливает привычка с лайтрума — он при импорте с сд карты копирует фотки в папку вида 2013/05-12-2013/, в то время как Апертура копирует их себе в медиатеку, если не указать ей конкретную папку. А каждый раз сначала создавать, а потом указывать папку неудобно.
Может, это как-то можно решить, но пока не разобрался.
Может, это как-то можно решить, но пока не разобрался.
0
А как выбирать альбом в который загружать фотки и есть ли у вас обработка ошибок загрузки? (вдруг одна из сотен фоток не загрузится)?
0
Кстати, добавьте ссылку на мой вариант с использованием Fimp-токена.
1. Раньше, чтобы получить Fimp-токена, нужно было использовать скрипты (http://habrahabr.ru/post/207282/#comment_7147808), но чтобы упросить этот процесс, я за пол часа накидал приложение с использованием node-webkit. Исходники и само приложение доступны тут: github.com/NAlexandrov/yarsa (скачивайте zip-архив и запускайте yarsa.app).
2. Далее, когда у вас есть Fimp-токен, то необходимо скопировать этот скрипт в Automator, чтобы получилось как на картинке:
3. Для тех, кто не хочет загружать фотографии в корень Яндекс.Фоток, а хочет загружать в свой приватный альбом, то открывайте на сайте Яндекс.Фотки этот приватный альбом и смотрите в адресную строку. В ней есть цифровой идентификатор альбома, например у меня: fotki.yandex.ru/users/mylogin/album/200491/ Из этого адреса нас интересуют только цифры 200491. Чтобы загружать фотки именно в этот альбом, в скрипте, который вы скопировали в Automator, замените адрес в переменной ALBUM на
1. Раньше, чтобы получить Fimp-токена, нужно было использовать скрипты (http://habrahabr.ru/post/207282/#comment_7147808), но чтобы упросить этот процесс, я за пол часа накидал приложение с использованием node-webkit. Исходники и само приложение доступны тут: github.com/NAlexandrov/yarsa (скачивайте zip-архив и запускайте yarsa.app).
2. Далее, когда у вас есть Fimp-токен, то необходимо скопировать этот скрипт в Automator, чтобы получилось как на картинке:
Картинка + Исходник скрипта
on run
# заменить на свой токен
set TOKEN to "2d1da421fdd3404318e81c0a0442105e"
# адрес альбома куда загружать фотографии
set ALBUM to "http://api-fotki.yandex.ru/api/users/mylogin/photos/"
tell application "Finder"
set selectedFiles to (get selection)
if (count of selectedFiles) > 0 then
repeat with i from 1 to the count of selectedFiles
set filePath to POSIX path of (item i of selectedFiles as alias)
set responseCode to do shell script "curl -sL -w %{http_code} --header \"Authorization: FimpToken realm=\"fotki.yandex.ru\", token=" & TOKEN & "\" -F \"image=@" & filePath & "\" --request POST " & ALBUM & " -o /dev/null"
if (responseCode is not "201") then
display alert "Произошла ошибка:" message "Не удалось загрузить: " & filePath
end if
end repeat
display notification "Загрузка картинок завершена" with title "fotki.yandex.ru"
end if
end tell
end run
3. Для тех, кто не хочет загружать фотографии в корень Яндекс.Фоток, а хочет загружать в свой приватный альбом, то открывайте на сайте Яндекс.Фотки этот приватный альбом и смотрите в адресную строку. В ней есть цифровой идентификатор альбома, например у меня: fotki.yandex.ru/users/mylogin/album/200491/ Из этого адреса нас интересуют только цифры 200491. Чтобы загружать фотки именно в этот альбом, в скрипте, который вы скопировали в Automator, замените адрес в переменной ALBUM на
http://api-fotki.yandex.ru/api/users/mylogin/album/200491/photos/
+1
Ждем аналогичные скрипты для Windows на PowerShell)
+1
Для windows есть отличная программа Image Uploader, которая умеет всё это делать. zenden.ws/imageuploader
0
Еще немного — и кто-нибудь напишет службу для автоматической запаковки выбранных папок в zip с паролем и его загрузки на Яндекс.Диск. Вот тогда я буду счастлив :).
0
ну это легче.
запаковать папку в зип, подключиться к я.диску через WebDAV, залить архив.
запаковать папку в зип, подключиться к я.диску через WebDAV, залить архив.
0
AppleScript умеет с WebDAV работать?
0
0
Не похоже, что все так просто — toster.ru/q/62740
0
Хм. Точнее так — через AppleScript удается выполнить
при этом логин и пароль отдельно запрашиваются, их можно сохранить в связке ключей.
Через bash — как сохранить логин и пароль — непонятно.
mount volume "https://webdav.yandex.ru:443"
при этом логин и пароль отдельно запрашиваются, их можно сохранить в связке ключей.
Через bash — как сохранить логин и пароль — непонятно.
0
Может быть вам поможет blog.macromates.com/2006/keychain-access-from-shell/
0
А вот кстати вопрос. Кто как работает с JSON из Apple Script? Я сначала сделал свой парсер, но он жутко медленный, в итоге остановился на JSONHelper (http://itunes.apple.com/app/json-helper-for-applescript/id453114608?mt=12# Возможно кто-то использует другие способы.
0
Sign up to leave a comment.
Служба Automator, загружающая изображения на Яндекс.Фотки