Mercurial > repos > stevecassidy > ziptools
view zipcollection.py @ 1:278da6e5ab11 draft default tip
planemo upload for repository https://github.com/Alveo/alveo-galaxy-tools commit f2432aaedd36ae7662873623d8861d0982dffdd2
author | stevecassidy |
---|---|
date | Mon, 20 Nov 2017 22:51:12 -0500 |
parents | fe887de9b4b5 |
children |
line wrap: on
line source
from __future__ import print_function import argparse from zipfile import ZipFile import os def parser(): parser = argparse.ArgumentParser(description="Find matching segments in a TextGrid") parser.add_argument('--dataset', required=True, action="store", type=str, help="TextGrid files (comma separated)") parser.add_argument('--identifier', required=True, action="store", type=str, help="Dataset identifiers (comma separated)") parser.add_argument('--extension', required=False, action='store', default='', type=str, help="Extension for stored files") parser.add_argument('--output', required=True, action="store", type=str, help="Path to output file") return parser.parse_args() def main(): args = parser() datasets = args.dataset.split(',') identifiers = args.identifier.split(',') assert len(datasets) == len(identifiers), "number of datasets must match number of identifiers" pairs = zip(datasets, identifiers) with ZipFile(args.output, 'w') as zipfile: for dataset, identifier in pairs: # rewrite extension if asked if args.extension != '': base, ext = os.path.splitext(identifier) outname = base + "." + args.extension else: outname = identifier zipfile.write(dataset, outname) if __name__ == '__main__': main()