Flickr APIとPythonと

ここのところ、仕事の片手間にPythonとかFlickr APIとかと戯れていました。
『あるブログに記事を投稿したら、そこに含まれる写真(jpg)を自動で抽出して、Flickrにuploadする』と『自分のFlickrアカウントにuploadされている写真からランダムに選択されたものを10x10として表示する』という仕組みを考えていたからです。

試行錯誤していましたが、公開されているものを組み合わせて、ようやく完成しました。

前者はbashとuploadr.pyを組み合わせて作りました。Linux上で動作しています。
uploadr.pyはこちらからDLしました。
同じページに公開されているXMLTramp.pyもuploadr.pyと同じディレクトリに置いておく必要があります。
##################ココから##################
#! /bin/bash
#blogのRSSを指定
XML="blogのRSS"

#blogのRSSを取得(livedoor)
wget $XML -O livedoor 2> /dev/null

#blogのRSSを取得(excite)
wget $XML -O excite 2> /dev/null

#RSSからjpgのURLのみ抽出(livedoor)
cat livedoor* | grep jpg | cut -d '"' -f 2 > list.tmp

#RSSからjpgのURLのみ抽出(excite)
cat excite* | grep jpg | grep -v url | cut -d '"' -f 4 >> list.tmp

#全jpgファイルのURLが含まれるlistファイルがない場合は新規作成
if [ ! -e list ]
then
touch list
fi

#listファイルのバックアップ
mv -f list list.old

#最新listファイルの作成
cat list.tmp list.old | sort | uniq > list

#新規jpgのURLを抽出
cat list list.old | sort | uniq -u > list.new

#rssファイルの削除
rm -rf livedoor* excite*

#新規jpgをダウンロード
wget -i list.new

#新規jpgがない場合は終了
if [ ! -s list.new ]
then
exit
fi

#uploadr.pyで特定フォルダにあるjpgファイルをflikcrにアップロード
./uploadr.py

#jpgファイルの削除
rm -rf *.jpg
##################ココまで##################

後者はFlickr badge生成ページを利用しました。
これで出力されるコードからscript部分だけを繰り返し記述することで10x10のランダム写真が出力できました。

あとはデザインのために、slideooと、FlickrSlidrを使いました。

今回思ったのは、webサービスってすごいなってことと、htmlやpythonやperlは必要だなってことでした。
仕事とはまったく関係ないけど、プログラミング勉強しようかな。

コメント

このブログの人気の投稿

グループポリシーが適用されない

google appsを使いこなす その1(ドメイン取得編)

【解決】グループポリシーが適用されない