Python 修改图片文件的名称为拍摄时间
2023-09-11 14:22:26 时间
修改图片文件的名称:拍摄时间
import os
import exifread
import time
import os.path
path = "D:\\新建文件夹 (2)\\"
path2 = "D:\\异常\\"
file_list = os.listdir(path)
for index in range(0, len(file_list)):
old_filename = file_list[index]
old_fullname = path + old_filename
tags = ""
print(old_filename)
with open(old_fullname,"rb") as jpegFile:
tags = exifread.process_file(jpegFile)
if 'EXIF DateTimeOriginal' in tags:
str_time = str(tags['EXIF DateTimeOriginal'])
timeStruct = ''
#print(str_time)
try:
if '上午' in str_time:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S上午")
elif '下午' in str_time:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S下午")
else:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S")
str_time = time.strftime("%Y%m%d_%H%M%S", timeStruct)
except ValueError as e:
print('ValueError:',old_filename,e)
new_filename = str_time + os.path.splitext(old_fullname)[1]
new_fullname = path + new_filename
if old_filename != new_filename:
try:
os.rename(old_fullname, new_fullname)
except IOError as e:
print('IOError:',old_filename,e)
os.rename(old_fullname, path2+old_filename)
else:
str_time = str(time.strftime("%Y%m%d_%H%M%S", time.localtime(os.path.getmtime(old_fullname))))
new_filename = str_time + os.path.splitext(old_fullname)[1]
new_fullname = os.path.join(path, new_filename)
if old_filename != new_filename:
try:
os.rename(old_fullname, new_fullname)
except IOError as e:
print('IOError:',old_filename,e)
os.rename(old_fullname, path2+old_filename)
修改图片文件的名称:拍摄时间+原文件名
import os
import exifread
import time
import os.path
path = "D:\\新建文件夹 (2)\\"
path2 = "D:\\异常\\"
file_list = os.listdir(path)
for index in range(0, len(file_list)):
old_filename = file_list[index]
# 用于拍摄日期重名 比较特殊,最终文件名为:拍摄日期+创建时间
old_filename2 = "__" + os.path.splitext(old_filename)[0]
old_fullname = path + old_filename
tags = ""
print(old_filename)
with open(old_fullname,"rb") as jpegFile:
tags = exifread.process_file(jpegFile)
if 'EXIF DateTimeOriginal' in tags:
str_time = str(tags['EXIF DateTimeOriginal'])
timeStruct = ''
#print(str_time)
try:
if '上午' in str_time:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S上午")
elif '下午' in str_time:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S下午")
else:
timeStruct = time.strptime(str_time, "%Y:%m:%d %H:%M:%S")
str_time = time.strftime("%Y%m%d_%H%M%S", timeStruct)
except ValueError as e:
print('ValueError:',old_filename,e)
new_filename = str_time + old_filename2 + os.path.splitext(old_fullname)[1]
new_fullname = path + new_filename
if old_filename != new_filename:
try:
os.rename(old_fullname, new_fullname)
except IOError as e:
print('IOError:',old_filename,e)
os.rename(old_fullname, path2+old_filename)
else:
str_time = str(time.strftime("%Y%m%d_%H%M%S", time.localtime(os.path.getmtime(old_fullname))))
new_filename = str_time + old_filename2 + os.path.splitext(old_fullname)[1]
new_fullname = os.path.join(path, new_filename)
if old_filename != new_filename:
try:
os.rename(old_fullname, new_fullname)
except IOError as e:
print('IOError:',old_filename,e)
os.rename(old_fullname, path2+old_filename)
修改图片文件的名称:创建时间
using System;
using System.IO;
namespace ConsoleApp1
{
public class Class14
{
public void test1()
{
string exeName =AppDomain.CurrentDomain.FriendlyName;
string path = Directory.GetCurrentDirectory();
DirectoryInfo dir = new DirectoryInfo(path);
FileInfo[] inf = dir.GetFiles();
foreach (FileInfo fileInfo in inf)
{
Console.WriteLine(fileInfo.FullName);
if (fileInfo.Name.Equals(exeName))
{
continue;
}
string newPath = "";
string ext = Path.GetExtension(fileInfo.FullName);
string newName = fileInfo.CreationTime.ToString("yyyyMMdd_HHmmss_ffffff");
newPath = $"{fileInfo.DirectoryName}\\{newName}{ext}";
fileInfo.MoveTo(newPath);
}
}
}
}
相关文章
- 用Python读写Excel文件(转)
- Python 日期和时间_python 当前日期时间_python日期格式化
- Python 日期和时间_python 当前日期时间_python日期格式化
- python 生成二维码,快速分享自己的博客地址
- Python语言编程学习:文件路径变量修改,利用os模块固定文件父路径,变换文件子路径实现代码
- Python:python语言中与时间有关的库函数简介、安装、使用方法(获取当前时间/计算程序块前后运行时间/模型训练时间或耗费时间)之详细攻略
- 成功解决:将后缀.pyx格式文件(linux环境)编译成pyd文件(windows环境下)实现python编程加载或导入
- Python语言学习:Python语言学习之文件读取&写入/操作系统(OS模块详解)的简介、案例应用之详细攻略
- python基础知识之 Python代码规范
- 【华为OD机试 2023】 网上商城优惠活动 / 模拟商场优惠打折II(C++ Java Javascript Python)
- Python只需要三十行代码,打造一款简单的人工语音对话
- Python爬虫:PyExecJS在python中运行javascript代码
- python中使用traceback来追踪异常
- python 文件处理
- 60集Python入门视频PPT整理 | Python文件对象
- Python从zip文件里导入包
- Python 头部 #!/usr/bin/python 和 #!/usr/bin/env 的区别
- 基于Python语言使用RabbitMQ消息队列(四)
- Python自动化测试详细总结系列篇
- 【异常】前端ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
- Python可视化数据分析01、python环境搭建
- Python学习笔记七之文件操作:打开与写入、创建与删除、遍历文件夹批处理等
- python处理一个文件夹下的所有文件并保存在新的文件夹
- 如何将Python的上级目录的文件导入?【from.import】
- Python少儿编程提高篇(2)列表
- python工具方法 13 win系统字库保存为图片文件
- Python .py 文件打包成 .exe 文件(Windows平台,python 3.x)