Как я могу получить метаданные фотографии с помощью python
Пишу проект для работы, нужно проверять дату и время фотографии которую мне присылают сотрудники в телеграмм. Прочитал множество статей про метаданные EXIF(Знаю, что это не единственные) Накидал такой код, чтобы проверить есть ли вообще такие метаданные в снимках, которые мне присылаю, но их там нет
from exif import Image
with open("./images/test1.jpg", "rb") as file:
image = Image(file)
if image.has_exif:
status = f"contains EXIF (version {image.exif_version}) information."
else:
status = "does not contain any EXIF information."
print(f"Image {status}")
Вывод консоли Image does not contain any EXIF information.
Отсюда вопрос, реально ли это вообще сделать, или телеграмм подчищает все эти данные, так как считает их конфиденциальными
Возможно кто-то знает, как сделать через другой формат метаданных или использовать другой мессенджер, который не будет их подчищать(если да, то какой)?
Ответы (1 шт):
Получился такой код: он всегда выводит дату, тип изображения, его формат и т.д.
from PIL import Image
from PIL.ExifTags import TAGS
imagename = "telegram_img.jpg"
image = Image.open(imagename)
info_dict = {
"Filename": image.filename,
"Image Size": image.size,
"Image Height": image.height,
"Image Width": image.width,
"Image Format": image.format,
"Image Mode": image.mode,
"Image is Animated": getattr(image, "is_animated", False),
"Frames in Image": getattr(image, "n_frames", 1)
}
for label,value in info_dict.items():
print(f"{label:25}: {value}")