import traceback import urllib2 h = urllib2.HTTPDigestAuthHandler() h.add_password('Test digest', 'http://cnix.ro/digest-test/', 'digesttest', 'digesttest') o = urllib2.build_opener(h) for x in range(7): try: result = o.open('http://cnix.ro/digest-test/index') except: traceback.print_exc() else: print('bad page with non-negative reply, choose another one')