read-xlsx Skill
触发条件
用户输入 /read-xlsx <路径> 时,本 skill 生效。
执行流程
检查依赖:使用 Bash 检查
python或python3是否可用,以及openpyxl库是否已安装。- 若未安装,自动运行:
pip install openpyxl
- 若未安装,自动运行:
验证文件:确认路径存在且以
.xlsx或.xls结尾。提取内容:运行以下 Python 脚本获取工作表列表和指定 Sheet 的数据:
import openpyxl wb = openpyxl.load_workbook("<路径>") print("Sheets:", wb.sheetnames) ws = wb["<Sheet名>"] for row in ws.iter_rows(values_only=True): print(row)数据呈现:
- 如果表格较小(< 50 行),直接输出完整的 Markdown 表格。
- 如果表格较大,输出前 20 行 + 表头,并告知总行数和总列数,询问用户是否需要查看更多或筛选特定内容。
支持 .xls 格式:
- 如果是
.xls文件且openpyxl无法打开,自动安装xlrd并使用其读取。
- 如果是
输出要求
- 始终使用中文回复用户。
- 先列出所有可用的 Sheet 名称。
- 用 Markdown 表格展示数据,保持对齐。
- 若用户未指定 Sheet,默认读取第一个 Sheet。
- 若提取失败,给出具体错误原因。