class_docstr: The adapter which uses `aiohttp`_ library.
  
  .. _aiohttp: https://docs.aiohttp.org/
  
  `aiohttp` supports keep-alives, persists Cookies, allows response
  compression and uses HTTP/1.1 [currently].
  
  ``aiohttp`` package must be installed in order to use this adapter.
code: def _request(self, url, *, timeout, headers):
      if self.proxies:
          scheme = urlparse(url).scheme
          proxy = self.proxies.get(scheme.lower())
      else:
          proxy = None
  
      # aiohttp accepts url as string or as yarl.URL.
      # A string url might be re-encoded by yarl, which might cause
      # a hashsum of params to change. Some geocoders use that
      # to authenticate their requests (such as Baidu SK).
      url = yarl.URL(
          url, encoded=True
      )  # `encoded` param disables url re-encoding
      return self.session.get(
          url,
          timeout=timeout,
          headers=headers,
          proxy=proxy,
          ssl=self.ssl_context,
      )
  
imports: import abc
  import asyncio
  import contextlib
  import email
  import json
  import ssl
  import time
  import warnings
  from socket import timeout
  from ssl import SSLError
  from urllib.error import HTTPError
  from urllib.parse import urlparse
  from urllib.request import HTTPSHandler, ProxyHandler, Request, URLError, build_opener, getproxies
  from geopy.exc import GeocoderParseError, GeocoderServiceError, GeocoderTimedOut, GeocoderUnavailable, GeopyError
  from geopy.util import logger
label_desc: Use image node_id 3 for calling the AioHTTPAdapter obj's underlying member method code with example usage: obj._request(url) and returns: self