Introduction

ブログ内検索

  • このサイトの記事を検索 by Google

おすすめの一冊!

無料ブログはココログ

« 2010年5月 | トップページ | 2010年7月 »

2010年6月

2010-06-05

Thrift のビルド

Twitter でふぁぼったツイートを Evernote に取り込みたい、というお話の続き。



Evernote の開発者向けサイトにアクセスしてみると、API が公開されています。

Evernote API は "Thrift" というフレームワークを使っているらしい。
Thrift は、元々は Facebook が開発したもので、今は Apache 配下のオープンソースで、
『プログラミング言語を適材適所に使おう』というコンセプトのものらしい。

Evernote API を知るために、まずは Thrift について調べてみました。

  ・Thrift 公式サイト

  ・Win32 へのインストールガイド  --  公式 wiki

  ・フレームワーク「Thrift」調査報告
  ・Thriftが便利すぎる
  ・[thrift][ruby][perl]Ubuntu 8.04 で Thrift を試してみた

とりあえず、ソースを持ってくれば cygwin でも動くらしい。




さっそく、公式サイトから thrift-0.2.0-incubating.tar.gz をダウンロードして、展開してビルド。

% tar xfz thrift-0.2.0-incubating.tar.gz % cd thrift-0.2.0 % ./bootstrap.sh % export CXXFLAGS="-D PTHREAD_MUTEX_RECURSIVE_NP=PTHREAD_MUTEX_RECURSIVE" % ./configure % cd compiler/cpp/ % make % make install % cd ../../lib/rb/ % make % make install % gem install thrift
ちなみに、Perl 版がコンパイルエラーになってしまうので、一括ビルドはできません。 コンパイラと Ruby 版ライブラリを個別にビルドしてあげる必要があります。 他の言語のビルドは試していません。 ビルドに成功したら、さっそくサンプルコードを実行してみます。 まずサーバ側を起動:
% cd thrift-0.2.0/tutorial/ % thrift -r --gen rb tutorial.thrift ※ "-r" を忘れずに! % cd rb/ % ruby ./RubyServer.rb
続けてクライアント側も起動:
% cd thrift-0.2.0/tutorial/rb/ % ruby ./RubyClient.rb
すると即座に通信が行われて、クライアント側が終了するハズです。 サーバ側は Ctrl-C で止めてあげてください。 ちなみに、うちの PC に入っている cygwin 環境は以下の通りです:
GCC 4.3.4 20090804 (release) 1 ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-cygwin]
一括ビルドができなかったり、Ruby 版ライブラリのインストールには gem が必要だったり、 サンプルコードのコンパイル時に "-r" が必要だったり、いろいろ試行錯誤してしまって 手間がかかりましたが、とりあえず Ruby のコードが動く環境を作ることができました。 さて、ちょっと Thrift で遊んだら、いよいよ Evernote API のお勉強の始まりです。

2010-06-04

ふぁぼりを Evernote へ

Twitter でふぁぼったハズのツイートを後で検索したくなったりして、
それなら Evernote に取り込むようにすればいいじゃん、と思った金曜日。




Twitter から Evernote にデータを流す方法をググってみると、
Twitter の『favorite ページの RSS』を MAILPIA というサービスで取得して
E-mail で Evernote に自動投稿する、という方法がみつかりました。

  ⇒ Evernoteに記憶を自動保存する方法  --  RyoAnna's iPhone Blog

しかし、このやり方ではツイート本文が取り込めないらしいので、残念ながら使えません。
また、今までふぁぼってきたものが取り込めない、というのも難点です。




次の手段として、自作プログラムで Twitter API を叩いて favorite を取得して、
それをメールにして Evernote 投稿用メールアドレスに投げる、という手があります。

公式ブログによると、Evernote にメールで投稿するとき、メールの subject に
「@ノートブック」とか「#タグ」とか付けておくことで、投稿先のノートブックや
タグを好きなように指定できるらしいです。

  Emailing Into Evernote Just Got Better  --  Evernote 公式ブログ

この方法はお手軽なのですが、メールを大量に送信することになるので
スパムを送信しているとみなされるおそれがあります。
たとえば、@nifty の CGI サービス (LaCoocan) の場合、
1時間あたり100通を超えて送信するとアカウント停止になります。




というわけで、ちゃんと Evernote API を叩く必要がある、という結論になります。


次回は『Thrift について調べてみた』をお送りする予定です。

« 2010年5月 | トップページ | 2010年7月 »