Skip to main content

A python tool to format images based on EXIF information and edit EXIF data.

Project description

图片名称格式化工具

根据 EXIF 信息来格式化图片名字,方便管理

环境与安装

本工具使用 uv 管理依赖和运行环境。

安装依赖并同步环境:

uv sync

用法

1. format-img

格式化当前目录下的图片文件名。

基本用法

uv run format-img [-f format] [-s suffixs] [-h]
  • -f 文件名的格式,默认值为 %Y%m%d%H%M%S。支持的占位符列表见下表。
  • -s 要格式化文件名的后缀名列表(以逗号分隔,不区分大小写),默认值为 jpg,png,jpeg,heic。例如 -s "jpg,png"
  • -h 获取帮助信息。

支持的格式占位符:

格式 含义
%a 本地(locale)简化星期名称
%A 本地完整星期名称
%b 本地简化月份名称
%B 本地完整月份名称
%c 本地相应的日期和时间表示
%d 一个月中的第几天(01 - 31)
%H 一天中的第几个小时(24小时制,00 - 23)
%I 第几个小时(12小时制,01 - 12)
%j 一年中的第几天(001 - 366)
%m 月份(01 - 12)
%M 分钟数(00 - 59)
%p 本地am或者pm的相应符
%S 秒(01 - 61)
%U 一年中的星期数(00 - 53,星期天为一个星期的开始)
%w 一个星期中的第几天(0 - 6,0是星期天)
%W 和 %U 基本相同,不同的是以星期一为一个星期的开始
%x 本地相应日期
%X 本地相应时间
%y 去掉世纪的年份(00 - 99)
%Y 完整的年份
%Z 时区的名字
%% '%' 字符

示例

把当前目录下的 jpgpng 文件的名称格式化成 2017-10-01 10:17:01 的形式:

uv run format-img -s "jpg,png" -f "%Y-%m-%d %H:%M:%S"

2. modify-exif

用于读取/修改图片的 EXIF 信息。

基本用法

# 读取属性详情
uv run modify-exif -f file -r property [-s]

# 读取拍摄时间与数字化时间(only output value if -s is set)
uv run modify-exif -f file -rt [-s]

# 写入指定属性
uv run modify-exif -f file -w property -v value

# 写入拍摄时间与数字化时间
uv run modify-exif -f file -wt -v value

# 查看帮助
uv run modify-exif -h

具体示例可以参考 scripts/update-datetime.ps1,用于批量修改目标文件夹里面 yyyyMMddHHmmss 这样命名规则图片的 EXIF 时间信息。

注意事项

跨路径调用:如果要在其他路径(即不是项目根目录)下调用本工具,建议使用 --project 参数指定项目路径,例如:

uv --project D:\Development\format-img run format-img

使用 --project 可以确保 uv 能够找到该项目的环境与依赖,同时不会改变当前的工作路径(cwd),从而正确地对你当前所在的命令行路径下的图片进行格式化操作。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

format_img-0.1.0.tar.gz (6.7 kB view details)

Uploaded Source

File details

Details for the file format_img-0.1.0.tar.gz.

File metadata

  • Download URL: format_img-0.1.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for format_img-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2b20c72422b714ee96a36e0daf902cd14fbefdb0d91e24877cfe2ccc24afc0bc
MD5 b0a4abf8e10f4b2405065e288ba1ef31
BLAKE2b-256 a4f7fc829b6057ea7327c7f50cd7a693f7932b67c5d6375e9b40bc5df5c12a51

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page