1

我有超过 400 个CBR文件,需要删除每个文件中包含的第一个图像,其文件名的格式与包含 CBR 文件的名称相匹配,XXX-000a.gif即. 我将如何在 Python 中执行此操作?我在OS X Lion上。XXXXXX.cbr

4

2 回答 2

1

看起来 rarfile 库不支持文件删除,所以我最终得到了以下代码:

from rarfile import RarFile, NoRarEntry
from glob import glob
import os, subprocess

CBR_DIR = "directoryWithCBRFiles"

for fname in glob(CBR_DIR + os.sep + "*.cbr"):
    toremove = os.path.basename(fname)[:-4] + "-000a.gif"
    try: # to check if the file exists
        RarFile(fname).getinfo(toremove)
    except NoRarEntry:
        print("Wanted file not found in %s." % fname)
        continue

    # rar: http://www.rarlab.com/rar/rarosx-4.2.0.tar.gz
    subprocess.call(["rar", "d", fname, toremove])

print("All done!")
于 2012-07-04T19:56:24.143 回答
0

在没有看到您尝试过的情况下,这是我能做的最好的

for fname in os.listdir('directoryWithCBRFiles'):
    if fname.endswith('-000a.gif'):
        os.remove(os.path.join('directoryWithCBRFiles', fname))

希望能帮助到你

于 2012-07-02T18:11:28.510 回答