# HG changeset patch # User Sam Hart # Date 1209345381 14400 # Node ID 852be106a4bd4ebfc62f8854e5f99502a5fae708 # Parent 0d61ab33bc0c7552c6086db43afc732be58c5edf Add basic image finder --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/basic_image_finder.py Sun Apr 27 21:16:21 2008 -0400 @@ -0,0 +1,31 @@ +#! /usr/bin/env python + +pattern_list = ['*.jpg', + '*.jpeg', + '*.gif', + '*.png', + '*.tiff', + ] + +class Bunch: + def __init__(self, **kwds): self.__dict__.update(kwds) +arg = Bunch(recurse=True, pattern_list=pattern_list, return_folders=0, results={}) + +def visit(arg, dirname, files): + # Append to arg.results all relevant files + for name in files: + fullname = os.path.normpath(os.path.join(dirname, name)) + fullname = fullname.rstrip() + if arg.return_folders or os.path.isfile(fullname): + normalized_filename = name.lower() + for pattern in arg.pattern_list: + if fnmatch.fnmatch(normalized_filename, pattern): + arg.results[name] = fullname + break + # Block recursion if disallowed + if not arg.recurse: files[:]=[] + +root = "/home/sam/images" + +os.path.walk(root, visit, arg) +print arg.results \ No newline at end of file