Here is what I came up with: def siftUrl(s): s = s.split('//')[1] bits = s.split('/')
if '' in bits: bits.remove('') if len(bits) > 1: group = bits[-2] page = bits[-1] group.strip('/') page.strip('/') else: group = 'test' page = 'test' if group == group.capitalize(): page = '/'.join([group,page]) url = '/'.join(s.split('/')[:-2]) + '/' elif page == page.capitalize(): page = '/'.join(['Main',page]) url = '/'.join(s.split('/')[:-1]) + '/' else: page = '/'.join(['Main','Main']) url = s url = 'http://' + url return url, page -- http://mail.python.org/mailman/listinfo/python-list