Skip to main content
Glama
excel_accessor.py1.04 kB
""" Created by Steven Luo on 2025/8/6 """ from typing import Optional import pandas as pd from pandas import DataFrame from data_accessors.dataframe_accessor import DataFrameAccessor class ExcelAccessor(DataFrameAccessor): def __init__(self, filepath: str, sheet_name: Optional[str]=None, df: Optional[DataFrame] = None, column_description: Optional[dict] = None): super().__init__(df, column_description) self.filepath = filepath self.sheet_name = sheet_name df = df if df is not None else self.load_data(filepath, sheet_name=sheet_name) self._df = df self._data_summary = self.detect_data() @DataFrameAccessor.cached_data_loader def load_data(self, filepath, sheet_name=None, n_rows=None) -> DataFrame: if sheet_name is not None: df = pd.read_excel(filepath, sheet_name=sheet_name) else: df = pd.read_excel(self.filepath) self.logger.info(f"{filepath} sheet: {sheet_name}, load finished, shape: {df.shape}") return df

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Steven-Luo/chatbi-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server