예제 #1
0
def main(args):
    cache = SeriesCache()
    if args.get('--verbose', False):
        setlogginglevel('debug')
    logger.debug("Arguments: {args}".format(args=args))
    if args.get('<showname>', False):
        showname = getshowname(" ".join(args['<showname>']))
        if showname is None:
            print("Couldn't find a show by the name '{n}' "
                  "in your regexes!".format(n=" ".join(args['<showname>'])))
            return
        logger.info("Showname: '{name}'".format(name=showname))

    if args.get('--watch-next', False):
        watchnext(showname, cache)
    elif args.get('--watch', False):
        watch(showname, cache, args['--watch'])
    elif args.get('--next-episode', False):
        nextepisode(showname, cache)
    elif args.get('--mark-watched', False):
        markwatched(showname, cache, args['--mark-watched'], watched=True,
                    markprevious=args.get('--mark-previous', False))
    elif args.get('--mark-unwatched', False):
        markwatched(showname, cache, args['--mark-unwatched'], watched=False,
                    markprevious=args.get('--mark-previous', False))
    elif args.get('--download', False):
        download(showname, cache)
    elif args.get('--update', False):
        update(showname, cache)
    elif args.get('--rename', False):
        rename(cache, args.get('<filename>', []))
    else:
        print('Unimplemented/unknown arguments "{}".'.format(args))
예제 #2
0
def renameepisode(filename, cache):
    """ Rename a file by guessing what series and episode it is,
    from its' current file name
    """
    print("Analyzing {}".format(filename))
    seasonnumber, episodenumber = getepisodeinfo(filename)
    if None in (seasonnumber, episodenumber):
        print("Couldn't find episode information!".format(filename))
        return False
    showname = getshowname(filename)
    if showname is None:
        print("Didn't match any series")
        return False
    print("Found to be part of {}".format(showname))
    episode = cache.getepisode(showname, seasonnumber, episodenumber)
    if episode is None:
        print("Couldn't find any information on {} S{}E{}".format(showname, seasonnumber, episodenumber))
        return
    __, ext = path.splitext(filename)
    newfilename = episode.getprettyname() + ext
    newfilename = newfilename.replace("/", "-").replace("'", "")
    print("Moving to {}".format(newfilename.encode('utf8')))
    _movefile(filename, newfilename, showname)