import base64 import datetime def convert_twitter_image_filename_to_datetime(filename): filename_padded = filename + '=' * ((4 - len(filename) % 4) % 4) bytes_sequence = base64.urlsafe_b64decode(filename_padded) timestamp_bytes = bytes_sequence[:8] timestamp_int = int.from_bytes(timestamp_bytes, byteorder='big') timestamp_ms = (timestamp_int >> 22) + 1288834974657 # shift 41 bits to 64 bits and add Twitter's epoch time # Convert to seconds and then to datetime object timestamp_s = timestamp_ms / 1000 dt = datetime.datetime.fromtimestamp(timestamp_s, tz=datetime.timezone.utc) return dt filename = input("Enter the Twitter image filename: ") dt = convert_twitter_image_filename_to_datetime(filename) print("Decoded timestamp:", dt)