CPANモジュール「Flickr::Upload」を使う
画像のSNS(?)Flickrでは、WindowsとMac用のアップロードツールは公開され
ていますがLinux用は公開されていません。
が、nDikiさんのサイトによるとCPANモジュールが公開されているらしいの
で、インストールします。
nDikiさんのサイトにあるとおり、dh-make-perlという、 CPANモジュールをCPANのサイトからひっぱってきてdebパッケージにしてくれるツールを使います。
まずSynapticで
- dh-make-perl
- liburi-perl(XML::Parser::Lite::Treeが依存)
- libsoap-lite-perl(XML::Parser::Lite::Treeが依存)
をインストールします。
後はdh-make-perlを使って
- XML::Parser::Lite::Treeのdebパッケージ作成およびインストール。
(XML::Parser::Lite::TreeはSynapticではインストールできないようです)$ sudo dh-make-perl --build --cpan XML::Parser::Lite::Tree
$ sudo dpkg -i libxml-parser-lite-tree-perl_0.03-1_all.deb - さらにFlickr::Apiもdebパッケージ化してインストール。
$ sudo dh-make-perl --build --cpan Flickr::Api
$ sudo dpkg -i libflickr-api-perl_0.07-1_all.deb - これでようやくFlickr::Uploadのdebパッケージが作成可能に。
$ sudo dh-make-perl --build --cpan Flickr::Upload
$ sudo dpkg -i libflickr-upload-perl_1.22-1_all.deb
さっそく動かしてみると...
$ flickr_upload
Usage:
flickr_upload [--auth] --auth_token <auth_token> [--title <title>]
[--description description] [--public <0|1>] [--friend <0|1>] [--family
<0|1>] [--tag <tag>] <photos...>
Options:
(略)
--auth_token <auth_token>
Authentication token. Required.
ですって。トークンてなんだ?
どうも、最初に--authオプションでトークンを作る必要があるみたいです。
で、まずはトークン作成に必要なAPI keyをflickr
のサイトから取ってきます。
[Describe the application are you planning to build:]にはCPAN module Flickr::Uploadと書いておきました。
次にここに行くと今作ったキーの設定ができます。
[Not configured]をクリックして(画面では[Edit configuration]になってます)、[Application Title]と[Application Description]を書きます。これら2つは必須です。
これでトークンを作成することができます。
コマンドラインから
$ flickr_upload --auth --key [API key] --secret [Shared Secret]
1. Enter the following URL into your browser
http://flickr.com/services/auth?api_sig=****&frob=****&perms=write&api_key=****
2. Follow the instructions on the web page
3. Hit <Enter> when finished.
ここで、Webブラウザで上記のURLにアクセスします。
[OK,I'LL ALLOW IT]をクリックして、
が出たらコマンドラインでEnterを押す。
You authentication token for this application is
******-*************
めでたくトークンを作成できました。
これで、
$ flickr_upload --auth_token **** --key **** --secret **** test.jpg
Uploading test.jpg...
Waiting for upload results (ctrl-C if you don't care)...
test.jpg is at http://www.flickr.com/tools/uploader_edit.gne?ids=****
アップロード成功♪
いちいちトークン等指定するのが面倒な場合、$HOME/.flickrrcに
auth_token=****
key=****
secret=****
と書けば入力を省略できます。
他のオプションも指定可能です。
パーミッションを600にするのを忘れないようにしましょう。
トークンのしくみについてはま ちゅダイアリーさんに詳しく説明が書かれています。




