docs: def _download_images(self):
          """
          Downloads the images from the retrieved image URLs and
          stores in the specified destination folder.
          Multiprocessing is being used to minimize the download time
          """
  
          print('\nDownloading Images for the Query: ' + self._imageQuery)
  
          try:
              self._initialize_progress_bar()
  
              # Initialize and assign work to the threads in the threadpool
              threadPool = Pool(self._threadCount)
              threadPool.map(self._download_image, self._imageURLs)
  
              threadPool.close()
              threadPool.join()
  
              # Download each image individually
              # [self._download_image(imageURL) for imageURL in self._imageURLs]
  
              self._downloadProgressBar.finish()
  
          except Exception as exception:
              print('Error - Image Download: ' + format(exception))