perlでAnyEvent::Twitter::Streamを使用して取得
AnyEvent::Twitter::Stream
sample.pl
#/usr/bin/env perl use strict; use warnings; use AnyEvent::Twitter::Stream; use utf8; use Data::Dumper; use Time::Local; binmode STDOUT, ":utf8"; my $consumer_key = "consumer_key"; my $consumer_secret = "consumer_secret"; my $access_token = "access_token"; my $access_token_secret = "access_token_secret"; sub timestamp2date { my $timestamp = shift; my ($sec, $min, $hour, $day, $mon, $year) = localtime($timestamp / 1000); return sprintf('%04d-%02d-%02d %02d:%02d:%02d', $year + 1900, $mon + 1, $day, $hour, $min, $sec); } my $done = AE::cv; my $listener = AnyEvent::Twitter::Stream->new( consumer_key => $consumer_key, consumer_secret => $consumer_secret, token => $access_token, token_secret => $access_token_secret, method => 'filter', track => "おはよう", on_tweet => sub { my $tweet = shift; my $_text = $tweet->{text}; my $_lang = $tweet->{lang}; # 改行除去 $_text =~ s/(\r\n|\n\r|\n|\r)//g; # タイムスタンプを変換 my $tm = $tweet->{timestamp_ms}; my $date = timestamp2date($tm); print "$date $tweet->{user}->{name} $_text " . "\n"; }, ); $done->recv;
↓
2014-11-22 08:27:59 いつきんぐ @lhp134 おはよう 2014-11-22 08:28:02 @nanda_gomi_life おはよう 171 2014-11-22 08:28:02 おちゃ子 休日の朝はダメだな / おはよう http://t.co/MS33ZzWlyV 2014-11-22 08:28:04 南 千秋 @rorigeta_501JFW おはよう ロリげた@アイコン変えた 二度寝は気持ちいいけど…起きような? 2014-11-22 08:28:05 あ おはよ!つかれたおはよう疲れたただいまおやすみおやすー眠い起きるこんばんはこんにちはこんにちわさようなら死ぬ辛いむかつく楽しい嬉しい腹立つお腹すいた離脱ほかる風呂つらい6d060326 2014-11-22 08:28:06 有頂天風霊夢bot @IBUKll おはよう おちゃ子。今日もいい日になるといいわね 2014-11-22 08:28:06 あああ遊ぶなら博多人妻専科 人妻デリヘル こんにちは 2014-11-22 08:28:08 一般人 おはよう 2014-11-22 08:28:09 Be @culumiruku おはよう 2014-11-22 08:28:10 スペースくん@お酒奢って @whatman_ おはよう 2014-11-22 08:28:10 ☣ジョージ @moroegle おはよう
こんな感じ
参考
Perl入学式に関するツイートをIdobataに通知するボットを作った | IT Office Nishimiyahara
AnyEvent::Twitter::Streamをさわってみる|perl|@OMAKASE
なんかちょっと違うかも?
searchで検索した結果と時間差や取得しているデータに差があるのでapiそのものに問題があるかもしれないので実際に使用するのは見送る感じになりそう…