您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python利用文件时间批量重命名照片和视频

51自学网 2021-10-30 22:58:14
  python
这篇教程python利用文件时间批量重命名照片和视频写得很实用,希望能帮到您。

本文实例为大家分享了python利用文件时间批量重命名照片和视频的具体代码,供大家参考,具体内容如下

问题描述

承接上节的问题,在安卓和苹果间互导照片和视频还容易出现文件名混乱的问题,如下图所示。

代码实现

为保证文件名的准确性,这里主要提取照片的拍摄时间和视频的修改时间用于重命名,这两个时间一般是其原始时间,实现代码如下:

import osimport reimport timeimport exifreaddef get_file_date(filepath, format): '''  获取文件的时间戳,这里主要返回视频的时间,原时间一般为修改时间  st_atime (访问时间), st_mtime (修改时间), st_ctime(创建时间) ''' statinfo = os.stat(filepath) temp_time = time.localtime(statinfo.st_mtime) return str(time.strftime(format, temp_time))def get_exif_date(filepath): # 获取照片的拍摄日期,利用exifread模块 FIELD='EXIF DateTimeOriginal' fd=open(filepath,'rb') tags=exifread.process_file(fd) fd.close()  if FIELD in tags:  temp_time=str(tags[FIELD])    new_time=temp_time.replace(':','').replace(' ','_')  return new_timedef get_filetype(basename): ''' 利用正则表达式判断文件后缀,照片返回0,视频返回1,其他返回2 ''' img_reg=r'(/.JPG|/.jpg|/.bmp|/.png)' vedio_reg=r'(/.mp4|/.MP4|/.MOV)'  if re.search(img_reg,basename): #匹配照片  return 0 elif re.search(vedio_reg,basename): #匹配视频  return 1 else:  return 2if __name__ == "__main__": dirname = r'D:/ProgramData/Python' os.chdir(dirname) # 切换至当前目录 basenames = os.listdir(dirname) format = '%Y%m%d_%H%M%S' # 时间格式 for basename in basenames:  filepath = dirname+'//'+basename  num=get_filetype(basename)  if num==0:   str_time=get_exif_date(filepath) #处理照片   newname=str_time+os.path.splitext(basename)[1]   os.rename(basename,newname)   print(basename+'---照片修改成功!')     elif num==1:   str_time=str(get_file_date(filepath, format)) #处理视频   newname=str_time+os.path.splitext(basename)[1]   os.rename(basename,newname)   print(basename+'---视频修改成功!')  else:   print(basename+"---文件格式不正确!")

结论

最后修改结果如下。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持51zixue.net。


python opencv实现图像配准与比较
Python将QQ聊天记录生成词云的示例代码
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。