-1

作为研究项目的一部分,我有一个脚本,它将来自 twitter 的推文消费到本地托管的 mongodb 数据库中:

import json
import pymongo
import tweepy

consumer_key = ""
consumer_secret = ""
access_key = ""
access_secret = ""

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)


class CustomStreamListener(tweepy.StreamListener):
    def __init__(self, api):
        self.api = api
        super(tweepy.StreamListener, self).__init__()

        self.db = pymongo.MongoClient().test

    def on_data(self, tweet):
        self.db.tweets.insert(json.loads(tweet))

    def on_error(self, status_code):
        return True # Don't kill the stream

    def on_timeout(self):
        return True # Don't kill the stream


sapi = tweepy.streaming.Stream(auth, CustomStreamListener(api))
sapi.filter(track=['snowden'])

为了提高正常运行时间,我想做两件事:i) 远程运行此脚本,以及 ii) 将使用的推文存储在云中。但是,对于所有编程事物都是全新的,我不知道应该做什么来实现我的目标。我的下一步是什么?正常运行时间的“阻力最小路径”是什么?

4

1 回答 1

2

Heroku 是一个支持 Python 和 MongoDB 的云平台,我建议你使用它。此链接提供了有关如何执行此操作的工作参考。

这里有另外几个链接可以帮助你:

1)不使用 Django 的 Python 数据库(用于 Heroku)

2)如何从 python 使用 mongolab 插件到 Heroku?

希望这可以帮助!

于 2013-08-05T09:22:46.077 回答