def METHOD_NAME(symbol: str) -> pd.DataFrame:
    """Get ETF holdings
    Parameters
    ----------
    symbol: str
        Symbol to get holdings for
    Returns
    -------
    df: pd.DataFrame
        Dataframe of holdings
    Examples
    --------
    >>> from openbb_terminal.sdk import openbb
    >>> openbb.etf.holdings("SPY")
    """
    link = f"https://stockanalysis.com/etf/{symbol}/holdings/"
    r = request(link, headers={"User-Agent": get_user_agent()})
    try:
        df = pd.read_html(r.content)[0]
        df["Symbol"] = df["Symbol"].fillna("N/A")
        df = df.set_index("Symbol")
        df = df[["Name", "% Weight", "Shares"]]
        df = df.rename(columns={"% Weight": "% Of Etf"})
    except ValueError:
        df = pd.DataFrame()
    return df