From 477cab8f0932d5cf53f65df55671d3efd7fb9325 Mon Sep 17 00:00:00 2001 From: andrewso <9V5f1FkzI2LD> Date: Mon, 12 Oct 2020 11:51:37 +0100 Subject: [PATCH] [12.10.20] Testing --- src/tweets/collector.py | 59 ++++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/src/tweets/collector.py b/src/tweets/collector.py index f522b07..a1c42ec 100644 --- a/src/tweets/collector.py +++ b/src/tweets/collector.py @@ -90,52 +90,55 @@ class Listener(StreamListener): if 'extended_tweet' in data['retweeted_status']: #if tweet is over the 140 word limit text = data['retweeted_status']['extended_tweet']['full_text'] - dumpStack.append({'type': self.hashtag, 'tweet': text}) + processTweet(text, self.hashtag) + # dumpStack.append({'type': self.hashtag, 'tweet': text}) else: text = data['retweeted_status']['text'] - dumpStack.append({'type': self.hashtag, 'tweet': text}) + processTweet(text, self.hashtag) + # dumpStack.append({'type': self.hashtag, 'tweet': text}) else: # Else if a normal Tweeet if 'extended_tweet' in data: # If tweet is over 140 word limit text = data['extended_tweet']['full_text'] - dumpStack.append({'type': self.hashtag, 'tweet': text}) + processTweet(text, self.hashtag) + # dumpStack.append({'type': self.hashtag, 'tweet': text}) -def processTweet(): +def processTweet(text, type): - processStack = dumpStack.copy() - dumpStack.clear() + # processStack = dumpStack.copy() + # dumpStack.clear() - log("Processing [{}] Tweets...".format(len(processStack)), 'INFO') + # log("Processing [{}] Tweets...".format(len(processStack)), 'INFO') - if len(processStack) != 0: - for tweet in processStack: - removedLines = fixLines(tweet["tweet"]) - removedSpecialChars = cleanTweet(removedLines) - removedSpacing = removeSpacing(removedSpecialChars[0]) - tweetLength = checkLength(removedSpacing) - if tweetLength == True: + # if len(processStack) != 0: + # for tweet in processStack: + removedLines = fixLines(text) + removedSpecialChars = cleanTweet(removedLines) + removedSpacing = removeSpacing(removedSpecialChars[0]) + tweetLength = checkLength(removedSpacing) + if tweetLength == True: - checkIfEnglish = detectLaguage(removedSpecialChars[0]) + checkIfEnglish = detectLaguage(removedSpecialChars[0]) - if checkIfEnglish == True: + if checkIfEnglish == True: - tweetText = remove_non_ascii(removedSpacing) + tweetText = remove_non_ascii(removedSpacing) - # log("Cleaned Tweet: {}".format(tweetText), 'INFO') + # log("Cleaned Tweet: {}".format(tweetText), 'INFO') - cleanedTweet = tweetText + ' ' + removedSpecialChars[1] + cleanedTweet = tweetText + ' ' + removedSpecialChars[1] - if callSpamFilter(cleanedTweet) != 'spam': - pos, neu, neg, compound = callSentimentAnalyser(cleanedTweet) + if callSpamFilter(cleanedTweet) != 'spam': + pos, neu, neg, compound = callSentimentAnalyser(cleanedTweet) - if compound != 0.0: - hourTweet = {'pos': pos, 'neu': neu, 'neg': neg, 'compound': compound, 'type': tweet["type"]} + if compound != 0.0: + hourTweet = {'pos': pos, 'neu': neu, 'neg': neg, 'compound': compound, 'type': type} - hourStack.append(hourTweet) - processStack.clear() - else: - log("Dump Stack was Empty", 'WARN') + hourStack.append(hourTweet) + # processStack.clear() + # else: + # log("Dump Stack was Empty", 'WARN') def collector(hashtag): @@ -165,7 +168,7 @@ def createHourJob(): global timeF timeF = timeFunction() - processTweet() + # processTweet() log("Extracting sentiment scores...", 'INFO')