I want to analyze tweets and ı got streamming tweets.... directly I want to streaming and saving json format of tweets.
how to save in json format while during streaming tweets via twitter api, I wrote and get stream tweets but ı didn't save json file while streaming.
class TwitteStreamer():
def stream_tweet(self,hashtag_list):
stream = tweepy.Stream(
twitter_key.consumer_key, twitter_key.consumer_secret,
twitter_key.access_token, twitter_key.access_token_secret
)
stream.filter(track=hashtag_list, languages=["en"])
this is custom listener
class TweetPrinter(tweepy.Stream):
file = open('tweets.json', 'a')
def on_status(self, status):
print(status.text)
def on_data(self,tweet):
json_data = json.loads(data)
file.write(str(json_data))
def on_error(self, status_code):
print(status_code)
time.sleep(120)
return False # To continue listening
def on_timeout(self):
time.sleep(120)
return True # To continue listening
class Printer():
def print_tweets(self, hashtag_list):
printer = TweetPrinter(
twitter_key.consumer_key, twitter_key.consumer_secret,
twitter_key.access_token, twitter_key.access_token_secret
)
#printer.filter(track=hashtag_list)
printer.filter(track=hashtag_list ,languages=["en"])
hashtag_list = ["btc","bitcoin","Bitcoin","#btc","#Bitcoin","BTC","#BTC"]
fetched_tweets_filename = "tweets.json"
twitter_streamer = TwitteStreamer()
twitter_streamer.stream_tweet(hashtag_list)
printer = Printer()
printer.print_tweets(hashtag_list)