【问题标题】:Python subprocess.Call() with spaced argument like "-charset FileName=latin"Python subprocess.Call() 带空格参数,如“-charset FileName=latin”
【发布时间】:2021-02-19 22:06:59
【问题描述】:

使用 Windows 10,我想使用 subprocess.call() 从 python 向 exiftool.exe 发送以下标志:

-charset FileName=latin

以下命令行条目可以正常工作:

exiftool -charset FileName=latin -overwrite_original -createdate="1960:05:01 12:00:00" 
"Tif format EXIF sample\Førskole IMG031.tif"

通过 python 设置调用也可以。它会发出警告但仍会运行:

subprocess.call(
    ['exiftool', 
    f'-P', 
    f'-overwrite_original_in_place', 
    f'-CreateDate={new_date}', 
    file_or_folder_path])

Gives Warning:    
C:\source\image-file-date-bulk-edit\Tif format EXIF sample\Førskole IMG031.tif
FileName encoding not specified.  Use "-charset FileName=CHARSET"
Warning: FileName encoding not specified - C:\source\image-file-date-bulk-edit\
Tif format EXIF sample\Førskole IMG031.tif

但是当我将“-charset FileName=CHARSET”添加到我的 subprocess.call() 时,它似乎被进程忽略了:

subprocess.call(
    ['exiftool', 
    f'-charset FileName=latin',
    f'-P', 
    f'-overwrite_original_in_place', 
    f'-CreateDate={new_date}', 
    file_or_folder_path])

Charset flag is ignored and warning persists: 
C:\source\image-file-date-bulk-edit\Tif format EXIF sample\Førskole IMG031.tif
Warning: Tag 'charset' is not defined
FileName encoding not specified.  Use "-charset FileName=CHARSET"
Warning: FileName encoding not specified - C:\source\image-file-date-bulk-edit\Tif format EXIF sample\Førskole IMG031.tif

为什么在后一种情况下会忽略 f'-charset FileName=latin'

【问题讨论】:

    标签: python windows cmd subprocess exiftool


    【解决方案1】:

    试试:

    subprocess.call(
        ['exiftool', 
        '-charset', 'FileName=latin',
        f'-P', 
        f'-overwrite_original_in_place', 
        f'-CreateDate={new_date}', 
        file_or_folder_path])
    

    -charsetFileName=latin 在作为列表传递时应该是两个不同的参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-04
      • 1970-01-01
      • 2014-04-03
      • 1970-01-01
      • 2019-07-06
      • 1970-01-01
      • 1970-01-01
      • 2016-09-03
      相关资源
      最近更新 更多