通过 nodejs 将推文插入 mongodb
Tweets insertion into mongodb via nodejs
这是使用 nodejs 从 twitter 获取数据的代码。现在我想将它存储在 mongodb 中。任何人都可以指导我如何做的步骤。做不到。
var app = require('express').createServer(),
twitter = require('ntwitter');
app.listen(3000);
var a = 'love';
var b = 'hate';
var watchList = [a, b];
var twit = new twitter({
consumer_key: 'FtRTll97RNnYksFDMGMyCkMwF',
consumer_secret: 'laazWFm8p9nV6rx2H3PohRqwaB1jK1mUBus8BjEZfJlMW9gXwK',
access_token_key: '194952208-QMGEHqeY03XUSVLHa0pPueVVMLRICVtMCLSsu6m9',
access_token_secret: 'KivtwgKZ45rSdkEExVsYG8Ows9kPoRKl692PomUFSZ3Mp'
});
twit.stream('statuses/filter', {
track: watchList
}, function (stream) {
stream.on('data', function (data) {
console.log(data.user.screen_name + ': ' + data.text);
});
});
使用以下代码片段插入推文文档。
stream.on('data', function (data) {
console.log(data);
console.log("\n\n\n\n");
db.tweets.findAndModify({
query: {'id': 'data.id'},
update: { $set: data},
upsert: true,
new: true
})
});
在上面的代码中,如果 tweet id 已经存在,它将被更新,否则插入新记录。
upsert :如果设置为 true,则在没有文档符合查询条件时创建一个新文档。默认值为false,没有找到匹配项时不插入新文档。
谢谢
这是使用 nodejs 从 twitter 获取数据的代码。现在我想将它存储在 mongodb 中。任何人都可以指导我如何做的步骤。做不到。
var app = require('express').createServer(),
twitter = require('ntwitter');
app.listen(3000);
var a = 'love';
var b = 'hate';
var watchList = [a, b];
var twit = new twitter({
consumer_key: 'FtRTll97RNnYksFDMGMyCkMwF',
consumer_secret: 'laazWFm8p9nV6rx2H3PohRqwaB1jK1mUBus8BjEZfJlMW9gXwK',
access_token_key: '194952208-QMGEHqeY03XUSVLHa0pPueVVMLRICVtMCLSsu6m9',
access_token_secret: 'KivtwgKZ45rSdkEExVsYG8Ows9kPoRKl692PomUFSZ3Mp'
});
twit.stream('statuses/filter', {
track: watchList
}, function (stream) {
stream.on('data', function (data) {
console.log(data.user.screen_name + ': ' + data.text);
});
});
使用以下代码片段插入推文文档。
stream.on('data', function (data) {
console.log(data);
console.log("\n\n\n\n");
db.tweets.findAndModify({
query: {'id': 'data.id'},
update: { $set: data},
upsert: true,
new: true
})
});
在上面的代码中,如果 tweet id 已经存在,它将被更新,否则插入新记录。
upsert :如果设置为 true,则在没有文档符合查询条件时创建一个新文档。默认值为false,没有找到匹配项时不插入新文档。
谢谢