code: def _get_handler(url):
      prefix_pos = url.find("://")
      if prefix_pos < 0:
          raise MetaflowException("Malformed URL: '%s'" % url)
      prefix = url[:prefix_pos]
      handler = DATACLIENTS.get(prefix)
      if handler is None:
          raise MetaflowException(
              "Could not find data client for '%s'" % prefix
          )
      return handler
  
imports: from collections import namedtuple
  import gzip
  import io
  import json
  import os
  from hashlib import sha1
  from typing import Any, Dict, Optional
  from metaflow._vendor import click
  from .exception import MetaflowException
  from .parameters import DelayedEvaluationParameter, DeployTimeField, Parameter, ParameterContext
  from .util import get_username
  import functools
  from metaflow.plugins.datatools import Local, S3
  from metaflow.plugins.azure.includefile_support import Azure
  from metaflow.plugins.gcp.includefile_support import GS
label_desc: Use image node_id 5 for calling the UploaderV1 obj's underlying member method code with example usage: obj._get_handler(url) and returns: handler