localizer = localizer[0] except: ## fall back on mprage localizer = [x for x in scans if 'rage' in x] try: localizer = localizer[0] except: logging.error('{}: no localizer or mprage found'.format(sub)) continue try: date, fieldstr = mtr.info_from_tarfile(localizer) except: logging.error('Error pulling info from {}'.format(localizer)) logging.error('skipping {}'.format(sub)) continue arda_dirname = mtr.make_dirname(date, visitstr, fieldstr + 'T') print arda_dirname ardadir = mtr.os.path.join(arda, subid, arda_dirname) exists, _ = mtr.glob_file(ardadir) if exists: logging.warn('{} exists, skipping'.format(ardadir)) continue os.makedirs(ardadir) for scan in scans: newfile = mtr.fname_presuffix(scan, prefix = subid, newpath = ardadir) mtr.copy_file_withdate(scan, newfile) logging.info('copy: {}'.format(newfile)) scannotes = glob(os.path.join(sub, '*scan*notes*.txt' )) try:
for raw in scans[:]: # meta data logging.info(raw) _, rawf = os.path.split(raw) subid = mtr.get_subid(raw) if subid is None: logging.error('no subid in %s'%(raw)) continue logging.info(subid) visit_number = mtr.get_visit_number(raw) # get estimate of series field and date try: field, date = mtr.get_field_date(raw) dirname = mtr.make_dirname(date, visit_number, field) ardadir = mtr.os.path.join(arda, subid, dirname) exists, _ = mtr.glob_file(ardadir) if not exists: os.makedirs(ardadir) arda_raw = os.path.join(ardadir, rawf) exists, _ = mtr.glob_file(arda_raw) copy = True if exists: # check if update needed same = mtr.compare_filedates(raw, arda_raw) if same: logging.info('%s and %s are same, no update'%(raw, arda_raw)) copy = False else: