如何计算每分钟的搜索推文?

时间:2011-05-23 18:46:48

标签: php api twitter

让我说我需要知道每分钟有多少人搜索“某事”。

example 123 people is tweeting "something" per minute

有没有办法做到这一点?

感谢您查看

Adam Ramadhan

3 个答案:

答案 0 :(得分:0)

您最好的选择是使用Twitters流API。我已经围绕它创建了一个简单的PHP包装器(tweetstream,需要PHP 5.3)。它绝对没有完成,但应该给你一些想法。

使用Streaming API,您可以跟踪包含已定义关键字的推文。只需将这些推文与发布时间一起插入数据库即可。从那里开始计算是微不足道的。

使用示例:

$streamer = new TweetStream();
$streamer->setCredentials('your username', 'your password');
$streamer->setCallback(function($message) {
    $message = sprintf('%s says: %s', $message->user->screen_name, $message->text);
    mysql_query('INSERT INTO tweets(message, timestamp) VALUES(.., ..)');
});
$streamer->track('something');

答案 1 :(得分:0)

我能给你的最好的,如果你已经在搜索词的推文中加入了代码,那就是设置一个数据库并用timestamp存储推文。然后你只需做一个简单的查询,从第一个条目中抽出开始时间,从最后一个条目中抽出结束时间和该项目的twitter条目数。

从那里你只需计算一下推文的数量除以分钟数。中提琴,你每分钟都有你的推文。有关如何提取推文的详细信息,请参阅Twitter API Documentation

答案 2 :(得分:0)

不确定PHP是否存在Stream(SQL)实现 - 或者,如果您的语言要求是灵活的 - 但我最近使用Esper / JRuby / TweetStream使用本文中的信息实现了类似的东西:

http://www.igvita.com/2011/05/27/streamsql-event-processing-with-esper/