class_docstr: Specialise :class:`cartopy.io.Downloader` to download the zipped
  GSHHS shapefiles and extract them to the defined location.
  
  The keys which should be passed through when using the ``format_dict``
  are ``scale`` (a single character indicating the resolution) and ``level``
  (a number indicating the type of feature).
class_docstr_tok: ["Specialise",":","class",":","`","cartopy.io.Downloader","`","to","download","the","zipped","GSHHS","shapefiles","and","extract","them","to","the","defined","location",".","The","keys","which","should","be","passed","through","when","using","the","``","format_dict","``","are","``","scale","``","(","a","single","character","indicating","the","resolution",")","and","``","level","``","(","a","number","indicating","the","type","of","feature",")","."]
code: def __init__(
      self,
      url_template=_GSHHS_URL_TEMPLATE,
      target_path_template=None,
      pre_downloaded_path_template="",
  ):
      super().__init__(
          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 GSHHSShpDownloader object from inherited base classes: Downloader with example: obj = GSHHSShpDownloader(url_template, target_path_template, pre_downloaded_path_template)