in Bot2/Poller/twitterPoller.py [0:0]
def lambda_handler(event, context):
try:
twitterS = authenticate_twitter()
#maxID = defineMaxID()
tso = configureSearch(0)
imageTweet = 0
#print("maxID: %i" % maxID)
for tweet in twitterS.search_tweets_iterable(tso):
tweet_id = int(tweet['id'])
print("TweetID: %i" % tweet_id)
# current ID is lower than current next_max_id?
#if (tweet_id > maxID) or (maxID == 0):
# maxID = tweet_id
if (validate_tweet(tweet)):
mediaURL = tweet['entities']['media'][0]['media_url']
mediaID = str(tweet['entities']['media'][0]['id'])
screenName = tweet['user']['screen_name']
tweetBody = tweet['text']
print("Media: " + mediaID + " " + mediaURL)
build_send_sqs_message(mediaID, mediaURL, screenName, tweetBody)
imageTweet += 1
#ssm.put_parameter(Name='twitter-max-id',Type='String',Value=str(maxID),Overwrite=True)
print("Queries done: %i. Tweets received: %i" % twitterS.get_statistics())
print("Tweets with image: %i" % imageTweet)
except TwitterSearchException as e: # take care of all those ugly errors if there are some
print(e)
return {
"statusCode": 200,
"body": json.dumps(
{"message": "Poller"}
),
}