- PVSM.RU - https://www.pvsm.ru -

Скрипт Automator, загружающий изображения на Habrastorage: второе пришествие

Некоторое время назад я сделал скрипт [1], который загружает изображения на Habrastorage прямо из файлового менеджера. Но вот беда: после обновления [2] он перестал работать.
image
Но вчера мне все-таки надоело загружать фотографии через веб-интерфейс, и я пошел чинить скрипт.
За решение надо ставить плюсики в карму пользователю avalak [3], который рассказал как это сделать в моем вопросе [4] на тостере. Тостер — торт!

Итак, как теперь загружать изображения?

Раньше для загрузки картинок использовалась вот такая команда:
curl -F "Filedata=@/Users/vvzvlad/Documents/REVIEWS/003.jpg" "http://habrastorage.org/uploadController/?username=vvzvlad&userkey=7a25d94cde460365b6f7ce137675c623ec"

С новой версией HS она приняла вот такой вид:
curl --cookie "habrastorage_sid= fs5csqksk0hdm5mq3o91cmdm97" --form "files[]=@/Users/vvzvlad/Documents/REVIEWS/003.jpg --header "X-Requested-With: XMLHttpRequest" --header "Referer: http://habrastorage.org/" --request POST http://habrastorage.org/main/upload

Авторизация теперь происходит не по коду, а по содержимому куки. Чтобы его узнать, надо зайти на хабрасторедж, нажать(в хроме) на пустой листик перед адресом и выбрать «Показать cookie и данные сайта»:
image
После чего найти ее в списке и скопировать содержимое:
image
И вставить ее в скрипт:
image

Кстати, у предыдущей версии скрипта были определенные проблемы с именами папок и файлов, содержащими пробелы. Чтобы избежать этого, сделаем вот так:
image
Мы перемещаем файл во временную папку, переименовываем его, чтобы убрать пробелы в имени и загружаем. А после загрузки — удаляем:rm "$FILE"

Еще из нового — у меня картинка вставляется в текст черновика автоматически. Делается это следующей конструкцией:
set the clipboard to "<img src="" & input & "" alt="image"/>"
display notification input with title "Картинка загружена"
tell application "Google Chrome" to activate
tell application "System Events" to key code 9 using command down

Первая строка — формирует из адреса картинки тег изображения, вторая показывает уведомление, третья — делает приложение «Chrome» активным, а четвертая виртуально нажимает кнопку cmd+v.

Как обычно, файл со службой лежит вот тут [5]. Надо распаковать архив и его содержимое переместить в /Users/User/Library/Services/. Открыть его, щелкнув два раза на файл, и вставить свою куку внутрь.
Правда, что делать с протухающей через несколько дней кукой — я еще не знаю. Пока буду копировать вручную.

Автор: vvzvlad

Источник [6]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/mac-os-x/56244

Ссылки в тексте:

[1] скрипт: http://habrahabr.ru/post/207282/

[2] обновления: http://habrahabr.ru/company/tm/blog/139897/

[3] avalak: http://habrahabr.ru/users/avalak/

[4] вопросе: http://toster.ru/q/75434

[5] тут: https://www.dropbox.com/s/cskmuqujb4bluob/%D0%A1%D1%81%D1%8B%D0%BB%D0%BA%D0%B0%20%D0%BD%D0%B0%20%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D1%83%20%D0%B2%20%D1%85%D1%80%D0%BE%D0%BC.zip

[6] Источник: http://habrahabr.ru/post/214347/