Perlの最近のブログ記事

twitter をコマンドラインからも使おうと思ったら
一番早いのは公式にもあるようにcurlを使う事だ。

これなら(少なくともOSX.5では)何もインストールする必要はない。
しかし結果が全てXMLで表示される(というかRSSを表示してるだけ)
のでターミナルだと見づらい。
シェルスクリプト書いXMLパーサかますとかやってもいいけど面倒くさい。
後々の使い道は広そうだけど・・・。

そういうのはその内やるとして、もう少し手軽に使えて結果が見やすいのがいい、
と思って探したら perl で書かれたものが見つかったので使ってみる。

準備としてまずNet::Twitterモジュールをインストールする。

$ sudo perl -MCPAN -e shell
CPAN> install Net::Twitter 




次に$HOMEに.twitterというファイルを作り、
YAML形式でユーザ名とパスワードを記述する。
パーミッションは0600にする。
スクリプトを適当なディレクトリに配置したら実行。

$ twitter.pl public_timeline
RSS_AFP: Obama calls for urgent action on economic crisis http:\/\/tinyurl.com\/5zcdpq
でちゅのば: ホッティーおちつくわー
ドジっこmine: @quoggenzockerおお、お疲れ様ですー。
Chris Daniel: Awake. Trying to decide what to do today.
ユッキラキラ☆: @pgo 8つあります。
jordimolinera: Ei... bon dia!
kanatam: 帰宅して晩御飯中。今日はお惣菜。コロッケ買ってきたら、黒豆コロッケだった・・・豆いらねー!甘い。



 







これだと表示されるのがユーザ名と発言内容だけなので見やすい。
勿論ポストもできる。

ただし日本語等の非英語文字が化ける。
調べてみると私の環境には JSON 関係がインストールされていなかった。
なので JSON(と JSON::PP と JSON::XS)を CPAN でインストールする。

$ sudo perl -MCPAN -e shell
CPAN> install JSON
CPAN> install JSON::PP
CPAN> install JSON::XS






モジュールをインストールしたら再び実行。

$ twitter.pl public_timeline
moi: 这些东西,这些被认定为真实的东西真的存在(或存在过)吗?几十亿人,几百年,真有几个人真就去调查了解过了?还不是传扬出来的么?但是人人皆信了。
Dawn News: Eight killed, 10 injured in India blast: 
Saturday, 08 Nov, LUCKNOW: At least eight people were killed .. http://twurl.nl/heefm2
OnYourWeb_net: http://OnYourWeb.net Drug & Alcohol Recovery Club. Relapse Prevention & Sober L.. http://bit.ly/Wu2x
lpggass: BOP 頑張ってるなぁ、パーレィはいらんけどデロリアンは触ってみたいのぅ。
k_rion: アニメ見るたびに入江がかっこよくなっているのは何故?











文字化けは直った。
これならシェルで色々やってる時にちょっとTL見たりポストしたりできる。
いちいちブラウザに切り替えなくても済むのも楽。

先のcurlもそうだけど、使い方次第で色々応用が効きそうだ。