如何在gspread中获取工作表名称并将Google Sheet数据转为Pandas DataFrame?
获取gspread工作表的标签页名称
嘿,这事儿其实超简单!gspread里的Worksheet对象自带一个title属性,直接就能拿到你要的标签页名称,不用绕弯路~
具体操作步骤:
- 首先确认你已经通过
spreadsheet.worksheets()拿到了所有工作表的列表,比如:worksheets = spreadsheet.worksheets() - 要获取第一个工作表的名称,直接访问列表第一个元素的
title属性就行:first_sheet_title = worksheets[0].title print(first_sheet_title) # 输出就是类似"1Q14"这样的名称 - 如果需要批量获取所有工作表的名称,用列表推导式就能快速生成名称列表:
all_sheet_titles = [sheet.title for sheet in worksheets] print(all_sheet_titles) # 输出所有标签页名称的列表,比如["1Q14", "2Q14", ...]
完整示例代码:
import gspread from google.oauth2.service_account import Credentials # 替换成你的认证配置 scopes = ["https://www.googleapis.com/auth/spreadsheets"] creds = Credentials.from_service_account_file('your_service_account.json', scopes=scopes) client = gspread.authorize(creds) # 打开目标表格 spreadsheet = client.open("你的季度指标表格") # 获取所有工作表对象列表 worksheets = spreadsheet.worksheets() # 获取第一个工作表名称 first_sheet_name = worksheets[0].title print(f"第一个标签页名称:{first_sheet_name}") # 获取所有标签页名称 all_names = [sheet.title for sheet in worksheets] print("所有标签页名称:", all_names)
补充说明:
你拿到的worksheets列表里的每个元素都是gspread的Worksheet实例,title就是专门对应Google Sheets里显示的标签页名称的属性,和工作表ID是完全分开的,完全符合你的需求~
内容的提问来源于stack exchange,提问作者Tschau Sepp
相关产品推荐
相关产品推荐

