最近、私はここで、ユーザの介入なしに、.rar
ファイルと.zip
ファイルを自動的に抽出するスクリプトで助けが必要だとここでスレッドを作った。私はそれは素晴らしい作品の.rarファイルにこのスクリプトを実行して初めて、それが正しいディレクトリとすべてのものにファイルを抽出しますが、私は再びそれを実行した場合、それが印刷さ(Python)linuxコマンドunrarの問題は、私の人生にとって不可能なのですか?
import os
import re
from subprocess import check_call
from os.path import join
rx = '(.*zip$)|(.*rar$)|(.*r00$)'
path = "/mnt/externa/Torrents/completed/test"
for root, dirs, files in os.walk(path):
if not any(f.endswith(".mkv") for f in files):
found_r = False
for file in files:
pth = join(root, file)
try:
if file.endswith(".zip"):
print("Unzipping ",file, "...")
check_call(["unzip", pth, "-d", root])
found_zip = True
elif not found_r and file.endswith((".rar",".r00")):
check_call(["unrar","e","-o-", pth, root])
found_r = True
break
except ValueError:
print ("OOps! That did not work")
:人々の様々な助けを借りて、私はこれを作りましたエラー:
Extracting from /mnt/externa/Torrents/completed/test/A.Film/Subs/A.Film.subs.rar
No files to extract
Traceback (most recent call last):
File "unrarscript.py", line 20, in <module>
check_call(["unrar","e","-o-", pth, root])
File "/usr/lib/python2.7/subprocess.py", line 541, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['unrar', 'e', '-o-', '/mnt/externa/Torrents/completed/test/A.Film/Subs/A.Film.subs.rar', '/mnt/externa/Torrents/completed/test/A.Film/Subs']' returned non-zero exit status 10
は、だから私は除いて/試してみましたが、私は右のそれをやったとは思わない、誰もがこのスクリプトの最後の仕上げに助けることができますか?
はファイルですか? "抽出するファイルがありません"は、unrarがそれを見つけることができないようです – marcadian
うん、ファイルがあります。 – nillenilsson