Não se preocupe, criei um script Python que fez isso para mim. Se alguém se deparar com isso e precisar de algo semelhante, aqui está o meu código:
import glob, os, zipfile
zipfiles = glob.glob("*.zip") ## find all files with zip extension in current directory
count = 0 ## current file
while (count < len(zipfiles)):
print ("Extracting file: "+zipfiles[count])
zipRef = zipfile.ZipFile(zipfiles[count]) ## make ready for extraction
directoryToMake = zipfiles[count] ## iniital name for extraction directory
isMultiDisk = zipfiles[count].find('Disk') ## search for 'Disk' in the directory name and store location
if (isMultiDisk > 0): ## has found 'Disk' in the name
print("Multi Disk")
if (len(directoryToMake[isMultiDisk+4:-4]) < 2): ## checks to see if the disk number is more than 2 characters long
## not actually checking the number just the number of characters
## to account for some names being DiskA rather than Disk1
directoryToMake = directoryToMake[:-10] ## remove everything after the Disk to make the clean directory name
else:
directoryToMake = directoryToMake[:-11] ## remove extra char for disk numbers of 2 digits
else: ## disk not found in name
print("Single Disk")
directoryToMake = directoryToMake[:-4] ## just remove the .zip at the end
if not os.path.exists(directoryToMake): ## check if directory exists
print("Creating Directory: " + directoryToMake)
os.makedirs(directoryToMake) ## if not make it
print("Extracting files into directory: " + directoryToMake+ "\n")
zipRef.extractall(directoryToMake) ## extract into directory
count += 1