恢复我的 whatsapp 备份后,我遇到了问题,即图像创建日期设置为当前日期。这导致了android库的困惑。
最佳答案
这里基于文件名是一个解析器,用于设置图像和视频文件的创建日期。源代码是用python编写的。
第一部分的学分归功于 Joachim Holwech。谢谢。
from datetime import datetime
import piexif
import os
import time
folder = './'
def get_datetime(filename):
date_str = filename.split('-')[1]
return datetime.strptime(date_str, '%Y%m%d')
def get_date(filename):
date_str = filename.split('-')[1]
return datetime.strptime(date_str, '%Y%m%d').strftime("%Y:%m:%d %H:%M:%S")
allowedFileEndings = ['mp4','jpg','3gp','jpeg']
filenames = [fn for fn in os.listdir(folder) if fn.split('.')[-1] in allowedFileEndings]
l = len(filenames)
print(l)
for i, filename in enumerate(filenames):
if filename.endswith('mp4') or filename.endswith('3gp'):
date = get_datetime(filename)
modTime = time.mktime(date.timetuple())
os.utime(folder + filename, (modTime, modTime))
elif filename.endswith('jpg') or filename.endswith('jpeg'):
exif_dict = {'Exif': {piexif.ExifIFD.DateTimeOriginal: get_date(filename)}}
exif_bytes = piexif.dump(exif_dict)
piexif.insert(exif_bytes, folder + filename)
print('{}: {}/{}'.format(filename, i + 1, l))
print('\nDone!')
``
Src.: https://holwech.github.io//blog/Fixing-WhatsApp-Backup/
关于python - 恢复whatsapp备份后修复Whatsapp Exif错误的创建日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57977927/