Hide the "Running PythonClass.query_method..." spinner text

Running streamlit apps both in the cloud and locally, and for many input multiselects and dropdowns, I run a query to populate a list of options.

However, I get the actual code method displaying while that is happening.

Is there a way to disable this showing up? I’d rather have the spinner without the peak into the code that is running, but removing it entirely also works. Happy to run some CSS/HTML hackiness to remove it, just need to know where it is.

I’m on the latest versions of Streamlit, 1.31.1, at time of writing. Question was also asked in December St.connection:how to hide spinner writing: Running sql.query(...). in page

There is a show_spinner argument to SQLConnection.query. But your spinner seems to come from somewhere else. I mean, that is not the default message so some code (either your own or someone else’s) is already changing it.

I am connecting directly to Snowflake with a snowflake connection class, using the snowflake-connector-python Installing the Python Connector | Snowflake Documentation library.

Is there an advantage to switching to Streamlit’s native SQLConnection.query method?

def __get_connection(self):
        """
        Connects to Snowflake; use in a with statement to ensure connection closes.
        """
        self.__connection = snowflake.connector.connect(
            user=self.user,
            password=self.password,
            account=self.account,
            database=self.database,
            warehouse=self.warehouse,
        )
        return self.__connection

I was answering according to the context in the linked post, because that was pretty much the only context I had. I know nothing about snowflake, but I don’t think you can use SQLConnection to access it.

Apparently you are calling MarketInsightsDataQuery.get_latest_contract_date_electricity_futures_settlement_prices(), but I have no idea what that is or how you are calling it.

It is simply a class method that sets up the snowflake connection and then queries data. The query method is simply called in the page to return a pandas dataframe.

Class

Actual method (there are several dozen of these of similar shape that I call throughout my app).

Is it the st.cache_data decorator that causes the spinner to appear on the page?

Yes, and cache_data takes a show_spinner argument too.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.