Я использую скрипт Python в EventGhost для сопоставления файлов определенного типа в каталоге и перемещения их в определенные места, чтобы другие программы могли выполнять над ними действия. Вот весь сценарий:
import shutil
import os
SubFileTypes = ('sub','srt','txt')
ZipFileTypes = ('rar','zip','7z','r0')
MediaFileTypes = ('mkv','avi','mp4','wmv')
DownloadName = ''.join(eg.event.payload)
FileName = os.path.basename(DownloadName)
isFolder = os.path.isdir(DownloadName)
eg.globals.tvzip = 'J:\\DL\\TVzip\\'
eg.globals.tvzipdir = eg.globals.tvzip+FileName+'\\'
eg.globals.tvproc = 'J:\\DL\\TVProc\\'
if isFolder == True:
os.mkdir(eg.globals.tvzipdir)
# print 'I\'m a folder!'
for root, dirs, files in os.walk(DownloadName):
for f in files:
if f.endswith(ZipFileTypes):
#print 'I\'m a zip file!'
shutil.copy(os.path.join(root,f),eg.globals.tvzipdir)
if f.endswith(SubFileTypes) or f.endswith(MediaFileTypes):
#print 'I\'m a subtitle or media file!'
shutil.copy(os.path.join(root,f),eg.globals.tvproc)
elif isFolder == False:
shutil.copy(DownloadName,eg.globals.tvproc)
eg.plugins.EventGhost.DisableItem(XmlIdLink(23))
# print 'I\'m NOT a folder!'
else:
print 'I dont know what I am!'
Конкретная проблема, с которой я сталкиваюсь, заключается в том, что мне нужна возможность сопоставлять каждое расширение .rX, полученное в формате split-rar. Эти расширения начинаются с r0 и могут заканчиваться неограниченным числом. Они как минимум "r + две цифры" (r00, r01, r02 и т. Д.), Но я думаю, что они могут быть выше двух цифр, хотя я не уверен.
Есть ли способ, которым я могу изменить свой список ZipFileTypes, чтобы включить эти расширения split-rar? Или есть другой способ?