def get_user_opt(self): args = Base.get_user_input('hcf:r:s:t:') if r'-h' in args: Base.print_help(self.help_menu) if r'-c' in args: self._combine_files = True if r'-f' in args: fmt = args['-f'].lower() if fmt == TYPE_TXT or fmt == TYPE_CSV: self._fmt = fmt else: Base.print_exit("Error, unsupport format!") if r'-r' in args: if args['-r'] == r'True': self._sort_reverse = True else: self._sort_reverse = False if r'-s' in args: # set _src to list if self._src == None: self._src = list() # get src files fs = self.get_src_files(os.path.abspath(args['-s'])) if fs: # add fs to _src for f in fs: self._src.append(f) if r'-t' in args: ftype = File.get_filetype(os.path.abspath(args['-t'])) if ftype in [TYPE_TXT, TYPE_CSV]: self._tgt = os.path.abspath(args['-t']) self._combine_files = True self._fmt = ftype else: self._tgt = os.path.abspath(args['-t'])
def get_output_name(self, fmt): if File.get_filetype(self._tgt) == fmt: name = self._tgt elif self._combine_files == True: name = r'%s/%s.%s' % (self._tgt, u'日历', fmt.lower()) else: name = r'%s/%s.%s' % (self._tgt, self._cal_name, fmt.lower()) # return name of file. return name
def get_src_files(cls, path): fs = None if os.path.exists(path) == True: if os.path.isfile(path) == True and File.get_filetype(path) == TYPE_ICS: fs = list() fs.append(path) elif os.path.isdir(path) == True: fs = ICSCalendar.get_ics_files(path) # return result. return fs
def get_ics_files(cls, path): fs = None for root, dirs, files in os.walk(path): if len(files) != 0: for f in files: if File.get_filetype(f) == TYPE_ICS: if fs == None: fs = list() fs.append(os.path.join(root, f)) # return all of files. return fs
def reclaim_image(cls, f, obj=None, xfunc=None): fname = f if obj: img = obj else: img = cls.image_file(f) if img: fmt = img.format.lower() if fmt == 'jpeg': fmt = 'jpg' ftype = File.get_filetype(f) if not ftype: # no ext name fname = '%s.%s' % (f, fmt) elif fmt != ftype: fname = re.sub(ftype, fmt, f) try: os.rename(f, fname) except OSError as e: print('%s, failed to rename %s.' % (str(e), f)) # run xfunc if xfunc: xfunc(fname)