Improved logging when an invalid/deleted tweet is attempted to be downloaded

Plus: unit tests for non-existent tweet + invalid tweet ID
This commit is contained in:
Patrick Robertson
2025-01-12 12:00:45 +01:00
parent f29950905c
commit c932fb7416
2 changed files with 15 additions and 4 deletions

View File

@@ -108,9 +108,11 @@ class TwitterArchiver(Archiver):
tweet = tie._extract_status(tweet_id)
result = Metadata()
try:
if not tweet.get("user") or not tweet.get("created_at"):
raise ValueError(f"Error retreiving post with id {tweet_id}. Are you sure it exists?")
timestamp = datetime.strptime(tweet["created_at"], "%a %b %d %H:%M:%S %z %Y")
except Exception as ex:
logger.warning(f"Failed to get timestamp: {type(ex).__name__} occurred. args: {ex.args}")
except (ValueError, KeyError) as ex:
logger.warning(f"Unable to parse tweet: {str(ex)}\nRetreived tweet data: {tweet}")
return False
result\