class_docstr: Specialise :class:`cartopy.io.Downloader` to download the zipped
  Natural Earth shapefiles and extract them to the defined location
  (typically user configurable).
  
  The keys which should be passed through when using the ``format_dict``
  are typically ``category``, ``resolution`` and ``name``.
class_docstr_tok: ["Specialise",":","class",":","`","cartopy.io.Downloader","`","to","download","the","zipped","Natural","Earth","shapefiles","and","extract","them","to","the","defined","location","(","typically","user","configurable",")",".","The","keys","which","should","be","passed","through","when","using","the","``","format_dict","``","are","typically","``","category","``",",","``","resolution","``","and","``","name","``","."]
code: def __init__(
      self,
      url_template=_NE_URL_TEMPLATE,
      target_path_template=None,
      pre_downloaded_path_template="",
  ):
      # adds some NE defaults to the __init__ of a Downloader
      Downloader.__init__(
          self,
          url_template,
          target_path_template,
          pre_downloaded_path_template,
      )
  
imports: import io
  import itertools
  from pathlib import Path
  from urllib.error import HTTPError
  import shapefile
  import shapely.geometry
  from cartopy import config
  from cartopy.io import Downloader
label_desc: Use image node_id 1 to create a new NEShpDownloader object from inherited base classes: Downloader with example: obj = NEShpDownloader(url_template, target_path_template, pre_downloaded_path_template)