class_docstr: Data provider communicating with API server.
class_docstr_tok: ["Data","provider","communicating","with","API","server","."]
code: def get_artifact(self, artifact, local_path=None, only_newer="True"):
      if isinstance(artifact, str):
          experiment_key = re.match(r".*(?=/)", artifact).group(0)
          artifact_tag = re.search(r"(?<=/)[^/]*\Z", artifact).group(0)
          experiment = self.get_experiment(experiment_key)
          artifact = experiment.artifacts[artifact_tag]
  
      return artifact.download(
          local_path=local_path, only_newer=only_newer
      )
  
imports: import requests
  import json
  import time
  import re
  from studio.util import logs
  from studio.auth import get_auth
  from studio.credentials.credentials import Credentials
  from studio.storage.storage_setup import get_storage_verbose_level
  from studio.storage.http_storage_handler import HTTPStorageHandler
  from studio.experiments.experiment import experiment_from_dict
  from studio.util.util import retry, check_for_kb_interrupt
label_desc: Use image node_id 13 for calling the HTTPProvider obj's underlying member method code with example usage: obj.get_artifact(artifact, local_path, only_newer) and returns: artifact