PerlのTwitterモジュールの紹介 #twtr_hack
Upcoming SlideShare
Loading in...5
×
 

PerlのTwitterモジュールの紹介 #twtr_hack

on

  • 4,233 views

2012年3月21日に行われた、第5回「Twitter API勉強会」 #twtr_hack http://www.zusaar.com/event/237004 ...

2012年3月21日に行われた、第5回「Twitter API勉強会」 #twtr_hack http://www.zusaar.com/event/237004 でトークしたときのプレゼン資料です。それほど大したことは書かれていません。

ただ、最後にある拙作のStreaming APIでの検索結果を眺めるプログラムは、テレビ等の実況閲覧で実際に便利に自分使いしているものなので、一部の方に多少の参考にはなるかなと思っています。AnyEvent::Twitter::Streamまで導入出来てしまえば簡単に使えます。

【補足1】DEMOのコンソール画面は本来動画であったものです(Keynoteでは再生されるけどSlideshareでは再生されない)。別途YouTube等にアップを検討中です。

【補足2】twitter-stream-search.pl は Perl-5.14 のコアモジュール以外に Date::Format と Date::Parse を必要とします。使用の際には cpanm Date::Format ; cpanm Date::Parse 等もお願いします。

Statistics

Views

Total Views
4,233
Views on SlideShare
3,637
Embed Views
596

Actions

Likes
3
Downloads
2
Comments
0

5 Embeds 596

http://samuraism.jp 586
http://freerss.net 4
https://twitter.com 3
http://waseda-archery.homeip.net 2
http://s.deeeki.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

PerlのTwitterモジュールの紹介 #twtr_hack Presentation Transcript

  • 1. PerlのTwitterモジュールの紹介 株式会社fonfun 尾形 鉄次 (OGATA Tetsuji) Twitter: @xtetsuji 2012/03/21
  • 2. 自己紹介
  • 3. 自己紹介• 尾形 鉄次 (OGATA Tetsuji)• Twitter: @xtetsuji• Blog: http://post.tetsuji.jp/• よく書くもの: Perl / Shell Script / JavaScript• 「Twitter API勉強会」は前回初出席で、 ひょんなことからLTをすることになった
  • 4. 所属紹介• 株式会社fonfun(フォンファン) http://www.fonfun.co.jp/ • 主力製品:リモートメール http://rmail.jp/ (Twitter: @rmailjp)• Hokkaido.pm http://hokkaido.pm.org/ (Twitter: @hokkaidopm)
  • 5. はじめに• 学生の皆さん、社会人の皆さん、 Java Hackerのみなさん、こんにちは• Javaは全然書けません(すみません)• Perlを約9年書いていますが、それほど Perlも知りません(知識が偏っている)
  • 6. はじめに• といったわけで、私はPerlの代表という 力量もないので、あまり期待しないで 下さい• Apache mod_perlは詳しいほうです
  • 7. Agenda
  • 8. Agenda• イマドキのPerlの紹介• Perlに詳しくない人向け:Perl環境構築• Twitter関連のPerlモジュールをいくつか 紹介
  • 9. イマドキのPerlの紹介
  • 10. イマドキのPerlの紹介• 軽量言語でよくある誤解 • 古い: Perl • 新しい: PHP, Python, Ruby
  • 11. イマドキのPerlの紹介• 正しい理解 • 日々進化を続けている: Perl, PHP, Python, Ruby• Perlは今も「古い」のでは決して無く 「古くからある」という先発なだけ• 検索で出てくる「古い情報」がネック
  • 12. イマドキのPerlの紹介• Perlは今も様々なハッカー(Perl Monger) によって日々進化を続けている• すべては紹介しきれませんが、今回の 話のベースとして役に立つ話を少し…
  • 13. イマドキのPerlの紹介• 環境構築: Perlbrew • Rubyのrvm(Ruby Version Manager)、 Pythonのpythonbrewのようなもの • 既存とは別のPerl環境を簡単に作る事 ができるもの
  • 14. Perlbrew• 詳しくは http://perlbrew.pl/ を参照する か、”perlbrew” で検索してみる• とても簡単• OS(Distribution)標準のPerl環境を汚さず に済む
  • 15. Perlbrew
  • 16. Perlbrew• Perlbrewのインストール • $ curl -kL http://install.perlbrew.pl | bash • シェル環境変数の設定(.bashrcに追記) • source ~/perl5/perlbrew/etc/bashrc• これだけ
  • 17. Perlbrew• Perlbrewの注意点 • ビルドに必要な環境が必要 • Linux(e.g. Debian)だとbuild-essential • Mac OS X だと Xcode + α
  • 18. Perlbrew• Perlbrewで Perl 5.14.2 をインストール • perlbrew install perl-5.14.2
  • 19. Perlbrew• Perl 5.14.2 が入ったら使えるようにする • $ perlbrew switch perl-5.14.2• cpanm (App::cpanminus) も入れる • $ perlbrew install-cpanm cpanm コマンドが使えるようになる
  • 20. Perl and CPAN
  • 21. Perl and CPAN• CPAN (しーぱん) = Comprehensive Perl Archive Network• Perlモジュールの巨大なライブラリ
  • 22. Perl and CPAN
  • 23. Perl and CPAN
  • 24. Perl and CPAN• モジュール検索は metacpan.org か search.cpan.org で行える• それでは search.cpan.org で「Twitter」を 検索してみることに…
  • 25. Twitter Module of Perl
  • 26. Twitter Module of Perl
  • 27. Twitter Module of Perl• 今回は144個見つかった• ちなみに “Tweet” では51個見つかった• どれを使うとよいかは、活発にメンテ ナンスされているかが一つの指標 • 最終更新日が一つの参考になります
  • 28. Twitter Module of Perl• 大きく分けて以下のようなものがある • 単体で使えるAPIのラッパー • 何らかのフレームワークのプラグイン (WAF含む)
  • 29. Twitter Module of Perl• たぶん時間も差し迫ってきたころなの で、いくつか主要なモジュールを紹介• 何らかのフレームワークのプラグイン としてのTwitterモジュールは割愛
  • 30. Net::Twitter• OAuthから投稿まで、一連のREST APIに 対応するメソッドが っている• 多くのPerl Twitterモジュールもこれを 使っているケースが多い(っぽい)• 同じ作者の軽量版モジュール Net::Twitter::Liteもある
  • 31. AnyEvent::Twitter:: Stream• こちらはREST APIではなくTwitterの Streaming APIを利用できるもの• モダンなPerlでデファクトスタンダード であるイベント駆動フレームワーク AnyEventをベースとしたモジュール
  • 32. Tweet::ToDelicious• こちらは応用モジュールの一例• Twitter APIにAnyEvent::Twitter::Streamを 使ったモジュール• ツイートにURLが含まれていたら指定の Deliciousアカウントにブックマーク登録 ができる
  • 33. 簡単なサンプル
  • 34. 簡単なサンプル• モダンなPerlの環境はPerlbrewで作れた• cpanmも入れた• 必要なモジュールのインストール • $ cpanm AnyEvent::Twitter::Stream • 依存モジュールも自動的に入る
  • 35. 簡単なサンプル• AnyEvent::Twitter::Streamを使って、検索 を眺めながら詳細をログに記録する、 簡単なアプリケーションを作ってみる• https://gist.github.com/2139804 twitter-stream-search.pl (by xtetsuji)• たぶん手軽に試せるはず
  • 36. 簡単なサンプル DEMO
  • 37. まとめ
  • 38. まとめ• PerlにもTwitterのREST APIやStreaming APIを使うモジュールが充実している• Perl自体も今もモダンに進化している• みなさんもPerl書いてみませんか?
  • 39. 質問 / 気になる点• 懇親会に出ますので、その時に気軽に 声をかけて下さい(喜びます)• perlbrew/cpanmのインストールでうまく 行かない等あれば、私に協力できるこ とがあるかもしれません(質問歓迎)• 検索すると色々出てきます(他力本願)
  • 40. ご清聴ありがとうございました