TwitterのストリームAPIを使用してツイートを収集するためのPythonコードをいくつか実行しようとしました。私はpython-twitterパッケージと "getstreamsample()"メソッドを使用しています。私のコードは自分のラップトップでうまく動作しますが、クラウド(Ubuntu)で実行しようとすると、「getstreamsample()」メソッドはエラーメッセージなしでNoneを返すようです。私は "home_timeline()"のように、クラウド上で他の非ストリーミング方法を試してみましたが、うまくいきました。ストリーミングだけが動作していないようです。誰もこれについて何か考えているのですか?クラウド(ubuntu)のpython-twitterパッケージでGetStreamSampleメソッドを使用できません
私のコードは次の通りです:TwitterのストリーミングAPIは、10月の21日DYNへの攻撃以来の問題を経験してきた
#!/usr/bin/env python
import twitter
from pymongo import MongoClient
#Setting up Twitter API
api = twitter.Api(
consumer_key='Xxs...1Z8',
consumer_secret='LMegmAgtD...jKiCf',
access_token_key='2728....aEw1',
access_token_secret='LLZ...9cJfN71',
sleep_on_rate_limit=True
)
def main():
client = MongoClient('mongodb://xxx')
db = client.test
test=db.test
for line in api.GetStreamSample(stall_warnings=True):
if "text" in line:
if line['lang']=='en':
tweet={'created_at':line['created_at'],
'text':line['text'], 'coordinates':line['coordinates'],'_id':line['id_str']}
test.replace_one(tweet, tweet, True)
print (tweet)
if __name__ == '__main__':
main()
このコードは一度動作しましたが、それ以降は動作しません。 –