Google Sheets connection error

Hi, I am building my first Streamlit app but running into a lot of issues when trying to connect to data sources. I have tried connecting to both a public and private Google sheet but continue to run into the below error.

  File /opt/anaconda3/lib/python3.12/site-packages/streamlit_gsheets/gsheets_connection.py:36
    from streamlit.dataframe_util import convert_anything_to_pandas_df, is_dataframe_like

ModuleNotFoundError: No module named 'streamlit.dataframe_util'

My requirements.txt file (in same directory as app.py) is:

pypdf
streamlit==1.34.0
git+https://github.com/streamlit/gsheets-connection

I am pinning 1.34.0 of streamlit because of this post (but I am not using Snowflake):

I’ve tried every troubleshooting step I can find on this topic. Please let me know if I am missing something!

That post is no longer relevant, the issue was fixed and a new version released a few days after it.

I’m still getting the same error message though. The requirements.txt file is in the same directory as test.py. I have also tried running pip install -r requirements.txt to explicitly call the file but continue to run into the same error.

test.py

import streamlit as st
from streamlit_gsheets import GSheetsConnection

url = "https://docs.google.com/spreadsheets/d/1JDy9md2VZPz4JbYtRPJLs81_3jUK47nx6GYQjgU8qNY/edit?usp=sharing"

conn = st.connection("gsheets", type=GSheetsConnection)

data = conn.read(spreadsheet=url, usecols=[0, 1])
st.dataframe(data)

requirements.txt

git+https://github.com/streamlit/gsheets-connection

error message:

File /opt/anaconda3/lib/python3.12/site-packages/streamlit_gsheets/__init__.py:15
    from streamlit_gsheets.gsheets_connection import GSheetsConnection  # noqa

  File /opt/anaconda3/lib/python3.12/site-packages/streamlit_gsheets/gsheets_connection.py:36
    from streamlit.dataframe_util import convert_anything_to_pandas_df, is_dataframe_like

ModuleNotFoundError: No module named 'streamlit.dataframe_util'

Which means that you can use the latest streamlit. You can also use the latest st-gsheets-connection release instead of getting it from github.