def get_summoner_by_name(name):
    """
    Gets a summoner by name

    Args:
        name (str): the name of the summoner

    Returns:
        Summoner: the summoner
    """
    summoner = cassiopeia.core.requests.data_store.get(cassiopeia.type.core.summoner.Summoner, name, "name")
    if summoner:
        return summoner

    try:
        summoner = cassiopeia.dto.summonerapi.get_summoners_by_name(name)[__standardize(name)]
        summoner = cassiopeia.type.core.summoner.Summoner(summoner)
    except __HOLE__:
        return None

    cassiopeia.core.requests.data_store.store(summoner, name)
    cassiopeia.core.requests.data_store.store(summoner, summoner.id)
    return summoner
dataset/ETHPy150Open meraki-analytics/cassiopeia/cassiopeia/core/summonerapi.py/get_summoner_by_name