kstep 28.05.2011 02:13
Скрипты — Загрузка изображения на imgur.com
Тут недавно проскакивала тема скрипта для заливки на Picasaweb. А вот мне нравится imgur своей простотой и ненавязчивостью. У них на сайте приводятся примеры скриптов для работы с их API на множестве разных языков. Я же решил написать свой вариант на питонеМой вариант отличается тем, что использует urllib2, в то время, как пример от imgur основан на curl-ле.
Для начала идём на http://imgur.com/register/api_anon и заводим себе AppKey.
Потом берём код с гиста и кладём в файлик imgur, не забыв сделать для него chmod a+x.
Заменяем в нём значение API_KEY на тот ключ, что получили выше от imgur-а и скрипт готов к работе.
Ах да, он ещё требует либы poster, которая находится в пакете python-poster в Дебиане/Бубунте (про другие, увы, не знаю).
Всё. Принимает файлы либо со стандартного входа, либо как первый параметр при вызове. Например:
$ imgur ./pic/paul-graham-ladder.gif
Original: http://i.imgur.com/4mJkt.gif
Page: http://imgur.com/4mJkt
Delete: http://imgur.com/delete/AzzU0Mhnv6KJDvY
Small: http://i.imgur.com/4mJkts.jpg
Large: http://i.imgur.com/4mJktl.jpg
В случае ошибки пишет сообщение на STDERR и выдаёт ненулевой код возврата.
Disclaimer: писал для себя на коленке, публикую здесь, т.к. подумал, что может кому-то пригодится. Если кого что не устраивает — милости прошу, пилите.
Upd. Этот скрипт писался с расчётом на unix-way: никакого лишнего функционала, одна функция — залить файл на imgur и выдать результат, легко вставляется в пайпы, например можно на его стандартный вход пустить прогу, генерирующую какой-нить график, а вывод этого скрипта пропустить через grep/awk для выбора нужной ссылки и затем на xclip для вставки в буфер обмена. Что-то вроде (generate-cool-image | imgur | awk '/^Large:/{print $2}' | xclip -i) && notify-send "Imgur uploader" "Image successfuly uploaded!" || notify-send "Imgur uploader" "Error uploading image!"
ZED 28.05.2011 12:52 #
+ -2 -
После itmages я получу какой-то позитив от этого сервиса?
Судя по впечатлениям от обоих сервисов, я бы сказал, что itmages — это русский клон imgur-а. По сервису они примерно сопоставимы. Но imgur мне нравится больше, т.к. предоставляет больше возможностей по манипуляциям без регистрации. Например они дают ссылку на удаление изображения после его заливки.
Ну и да, если мне нужно выложить что-то в большом разрешении без всяких потерь и с полным контролем, то естественно пользуюсь своим собственным сервером =)
Угу, а потом вместо картинки вставка «у вас превышен лимит трафика». Нафиг такой сервис.
Делюсь свои быдлокодом для этого сервиса =)
Скрипт кладем в '~/.gnome2/nautilus-scripts/', кликаем правой кнопкой по графическому файлу в наутилусе и выбираем 'Сценарии' -> '%Название скрипта%'. Не забудьте про зависимости: python python-pycurl libnotify-bin и про ключ для api: http://imgur.com/register/api_anon.
После загрузки хотлинк появится в буфере.
Так же возможна загрузка нескольких картинок сразу: выделяем нужные графические файлы, кликаем правой кнопкой... =)
Скрипт кладем в '~/.gnome2/nautilus-scripts/', кликаем правой кнопкой по графическому файлу в наутилусе и выбираем 'Сценарии' -> '%Название скрипта%'. Не забудьте про зависимости: python python-pycurl libnotify-bin и про ключ для api: http://imgur.com/register/api_anon.
После загрузки хотлинк появится в буфере.
Так же возможна загрузка нескольких картинок сразу: выделяем нужные графические файлы, кликаем правой кнопкой... =)