code: def enumerateURL(urlDict, outputFolder, startIndex= 0, maxErrors = 100):
      
      for i, url in enumerate(urlDict.keys()):
          # Grabbing domain name:
          domain = re.findall("://(.*)/", url)[0]
  
          # Defining the starting index
          index = startIndex
  
          # The app will stop when this value reaches maxErrors
          consecutiveErrors = 0
  
          i3Browser = browser.Browser()
  
          # Main loop that checks if the maximum number of errors has been reached
          while consecutiveErrors <= maxErrors:
              # creating the new URL to download
              newQuery = url.replace("<INDEX>", str(index))
              print(newQuery)
              # Downloading the file
              try:
                  data = i3Browser.recoverURL(newQuery)
  
                  filename = domain.replace("/", "|") + "_" + "-profile_" + str(index).rjust(10, "0") +".html"
  
                  if urlDict[url] != None:
                      if urlDict[url] in data:
                          print(general.info("Storing resource as:\t" + filename + "..."))
                          # The profile was found  so we will store it:
                          with open( outputFolder + "/" + filename, "w") as oF:
                              oF.write(data)
                  else:
                      # The profile was found  so we will store it:
                      print(general.info("Storing resource as:\t" + filename + "..."))
                      with open( outputFolder + "/" + filename, "w") as oF:
                          oF.write(data)
              except:
                  pass
                  #logger.error("The resource could not be downloaded.")
  
              index+=1
docs: Function that performs the enumeration itself.