CodingFirst

C言語、Perl、JavaScript、最近はPythonも。出来上がったものより、プログラムを書くことが好き。あと、スイーツ。

スポンサーサイト

  • このエントリーをはてなブックマークに追加
  • web拍手 by FC2
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Perlでtwitterのつぶやきを検索表示する(2)

  • このエントリーをはてなブックマークに追加
  • web拍手 by FC2

昨日書いた、
CodingFirst Perlでtwitterのつぶやきを検索表示する
だけど、oAuth認証不要と分かったので変更。
これで、Twitterに何も登録しなくていいので、誰でも使えます。

つまり、これだけですぐ見れる!

$ wget --no-check-certificate https://github.com/yukioc/twit-view/raw/master/twit-view.pl
$ perl ./twit-view.pl -s '停電' -S '原発' '#jishin -rt'

あ、Term::ANSIColor をcpanからとってくる必要はあります。

以下、変更内容。
もともと、

my $nt = Net::Twitter::Lite->new(
  consumer_key    => $consumer_key,
  consumer_secret => $consumer_key_secret,
);
$nt->access_token($access_token);
$nt->access_token_secret($access_token_secret);

my $r=$nt->search({q=>$q,since_id=>"0"});

上の制御を下のように変更

sub get_twitter{
    my $q=shift;
    my %opt=%{$_[0]};
    my ($k,$v);
    my $url="http://search.twitter.com/search.json?q=".uri_escape($q);
    $url.="&$k=$v" while(($k,$v)=each(%opt));
    return decode_json(get($url));
}
my $r=get_twitter($q,\%query);

これで、Twitterにアプリケーションを登録しなくてもよくなる。
わざわざ Net::Twitter::Lite を外す事は必要なくて、

my $nt = Net::Twitter::Lite->new();
my $r=$nt->search({q=>$q,since_id=>"0"});

とするだけでも動いた。

他にも修正したんだけど、後は細かいバグフィックスと、
リクエストを調整したくらいなので割愛。

Rate Limiting | dev.twitter.comによると、
anonymousのリクエストは 150回/hまでで、oAuthの350回/hより厳しいので注意。
スクリプトの方は最低30秒のインターバルとした。充分っしょ。

そのほか Twitter search API の詳細が必要な場合は、下記を参照。
GET search | dev.twitter.com




Perlデータマンジング―データ加工のテクニック集Perlデータマンジング―データ加工のテクニック集
(2003/01)
デイビッド クロス

商品詳細を見る

Perl逆引きクイックリファレンス―Perl5.8対応Perl逆引きクイックリファレンス―Perl5.8対応
(2007/03)
坂田 健二

商品詳細を見る
スポンサーサイト


★☆★コメント★☆★

コメントの投稿

Name
Subject
Mail
URI
Comment
Pass
Secret 管理者にだけ表示を許可する

トラックバック

http://iyukki.blog56.fc2.com/tb.php/126-4163d23d

 | HOME | 

Search

Recent Entries

Foot Print



Categories

Monthly

Recent Comments

Recent Trackbacks

Profile

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。