Twitter のストリーミング API からローカルホストの mongodb にツイートを取り込むスクリプトがあります。アップタイムを改善するために、これをリモートで実行し、つぶやきを「クラウドのようなデータベース」(MongoLab など) に保存したいと考えています。
これが私のスクリプトです:
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=['Gandolfini'])
今、私は MongoLab と Heroku でアカウントを設定しましたが、完全に行き詰まっています (私はすべてのプログラミングに慣れていません)。物事を進めるには、次の 2 つの問題を解決する必要があると思います。i) スクリプトを Heroku でホストするにはどうすればよいですか? ii) Heroku で実行しているスクリプトを Mongolab アカウントに向けるにはどうすればよいですか? 何かご意見は?