code: def download_file_by_name(url, target_folder, file_name, mkdir=False):
      
      # headers to "spoof" the download as coming from a browser (needed for E+ site)
      __hdr__ = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 '
                 '(KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
                 'Accept': 'text/html,application/xhtml+xml,'
                 'application/xml;q=0.9,*/*;q=0.8',
                 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
                 'Accept-Encoding': 'none',
                 'Accept-Language': 'en-US,en;q=0.8',
                 'Connection': 'keep-alive'}
  
      # create the target directory.
      if not os.path.isdir(target_folder):
          if mkdir:
              preparedir(target_folder)
          else:
              created = preparedir(target_folder, False)
              if not created:
                  raise ValueError("Failed to find %s." % target_folder)
      file_path = os.path.join(target_folder, file_name)
  
      if (sys.version_info < (3, 0)):
          _download_py2(url, file_path, __hdr__)
      else:
          _download_py3(url, file_path, __hdr__)
docs: Download a file to a directory.
  
      Args:
          url: A string to a valid URL.
          target_folder: Target folder for download (e.g. c:/ladybug)
          file_name: File name (e.g. testPts.zip).
          mkdir: Set to True to create the directory if doesn't exist (Default: False)