从目录中的所有文件中删除 exif

remove exif from all files in directory

我想从目录中的所有 .JPG 文件中删除 exif/metadata。到目前为止,这是我所拥有的,但我的一部分认为这行不通,所以...帮助?

import os
from gi.repository import GExiv2

rootdir = "c:\directory\subdirectory\subdirectory2"

def noMeta(file):
    exif = GExiv2.Metadata(file + ".jpg")
    exif.clear_exif()
    exif.clear_xmp()
    exif.save_file()

for root, dir, files in os.walk(rootdir):
    for file in files:
        if file.lower().endswith(".jpg"):
            noMeta(file)

你真的想要 ...Metadata(file + ".jpg") 因为 file 已经有 .jpg 了。

我对 GExiv2 一无所知。 FWIW,piexif 库似乎得到维护:

import os
import piexif

rootdir = "c:\directory\subdirectory\subdirectory2"

def noMeta(file):
  print("gutting exif data from {}".format(file))
  piexif.remove(file)

for root, dir, files in os.walk(rootdir):
  for file in files:
    if file.lower().endswith(".jpg"):
      noMeta(os.path.join(root, file))