From e3248f29c291f06545f3bc6a134a5a527fd033c7 Mon Sep 17 00:00:00 2001 From: Alex Huddleston Date: Sat, 16 May 2020 18:43:07 +0000 Subject: [PATCH] Fixing a bug that caused media posts with too much text to not get archived. --- lib/archival.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/archival.py b/lib/archival.py index b979844..802a4c9 100644 --- a/lib/archival.py +++ b/lib/archival.py @@ -70,7 +70,19 @@ def archive_media_status(status): """ try: if(not ('retweeted_status' in status._json.keys())): - if('extended_entities' in status._json.keys()): + if('extended_tweet' in status._json.keys()): + if('extended_entities' in status.extended_tweet.keys()): + if('media' in status.extended_tweet['extended_entities'].keys()): + archive_filenames = [] + for media_dict in status.extended_tweet['extended_entities']['media']: + if(media_dict['type'] == 'photo'): + archive_filenames.append( + archive_media(media_dict['media_url'])) + elif(media_dict['type'] == 'video'): + archive_filenames.append( + archive_media(select_video_variant(media_dict['video_info']['variants']))) + return archive_filenames + elif('extended_entities' in status._json.keys()): if('media' in status.extended_entities.keys()): archive_filenames = [] for media_dict in status.extended_entities['media']: