class_docstr: Geocoder using the ERSI ArcGIS API.
  
  Documentation at:
      https://developers.arcgis.com/rest/geocode/api-reference/overview-world-geocoding-service.htm
class_docstr_tok: ["Geocoder","using","the","ERSI","ArcGIS","API",".","Documentation","at",":","https",":","\/\/developers.arcgis.com\/rest\/geocode\/api-reference\/overview-world-geocoding-service.htm"]
code: def _parse_geocode(self, response, exactly_one):
      if "error" in response:
          raise GeocoderServiceError(str(response["error"]))
  
      # Success; convert from the ArcGIS JSON format.
      if not len(response["candidates"]):
          return None
      geocoded = []
      for resource in response["candidates"]:
          geometry = resource["location"]
          geocoded.append(
              Location(
                  resource["address"],
                  (geometry["y"], geometry["x"]),
                  resource,
              )
          )
      if exactly_one:
          return geocoded[0]
      return geocoded
  
file_path: geopy/geopy/geocoders/arcgis.py
imports: import json
  from functools import partial
  from time import time
  from urllib.parse import urlencode
  from geopy.exc import ConfigurationError, GeocoderAuthenticationFailure, GeocoderServiceError
  from geopy.geocoders.base import DEFAULT_SENTINEL, Geocoder, _synchronized
  from geopy.location import Location
  from geopy.util import logger
label_desc: Use image node_id 3 for calling the ArcGIS obj's underlying member method code with example usage: obj._parse_geocode(response, exactly_one) and returns: geocoded, None, geocoded