def _get_handler(self, scheme):
        """Lazy-load the downloadhandler for a scheme
        only on the first request for that scheme.
        """
        if scheme in self._handlers:
            return self._handlers[scheme]
        if scheme in self._notconfigured:
            return None
        if scheme not in self._schemes:
            self._notconfigured[scheme] = 'no handler available for that scheme'
            return None

        return self._load_handler(scheme)
Lazy-load the downloadhandler for a scheme
        only on the first request for that scheme.
        
stackoverflow/venv/lib/python3.6/site-packages/scrapy/core/downloader/handlers/__init__.py