Twitter Stream API在OpenShift的后台运行
问题描述:
我正在寻找使用JavaScript中的twitter stream api,并且有一个脚本可以成功地从流式API中运行。我的问题是什么对我来说是最好的方式,以便它可以不断运行。或者改为使用搜索API会更好?我只是试图根据几个关键词来收集推文,但我想收集它们的一些内容并将它们存储到Mongolab中。克伦的工作会是最好的吗?我将使用openshift来处理流媒体和处理。Twitter Stream API在OpenShift的后台运行
我想我正在寻找最佳路线的指导,所以我不必经常监测并检查它是否收集推文。
谢谢!
var Twit = require('twit');
var MongoClient = require('mongodb').MongoClient;
var T = new Twit({
consumer_key: '***',
consumer_secret: '***',
access_token: '***',
access_token_secret: '***'
});
var url = "***";
MongoClient.connect(url, function (err, db) {
var col= db.collection('test');
// filter public stream on keywords
var stream = T.stream('statuses/filter', {track: ['#food', 'drinks']
});
stream.on('tweet', function (data) {
console.log("tweet: " + data);
col.insert(data, function (err, result) {
if (!err) {
console.log("insert successful on tweet: " + data.id);
} else {
console.log(err);
}
});
});
});
答
其他人可能会提供更好的答案,但是,我认为使用cronjob附加购物车将是一条路。您可以将它设置为在您的墨盒上按时间间隔执行作业,从而避免您不得不手动提取作业。这里有一篇OpenShift博客文章,可以帮助您开始https://blog.openshift.com/getting-started-with-cron-jobs-on-openshift/。