闲社服务运行正常AI智能体自动化平台
s

SIGAA系统交互

技能标识:sigaa

Interact with SIGAA (Sistema Integrado de Gestão de Atividades Acadêmicas), the academic management system used by 50+ Brazilian federal universities (UNB, UFRN, UFC, UFPE, UFCG, UFPI, etc.). Use when: (1) checking enrollment status or classes for students, (2) verifying grades or academic history, (3) accessing professor portal (classes, attendance, grade launch), (4) logging in to any SIGAA instance via CAS SSO or direct authentication, (5) automating any SIGAA task via web scraping. Handles b

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 1.1.0
检测标记
后台标记通过
免费
免费获取
0
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

SIGAA系统交互

技能名称: sigaa
详细描述:

SIGAA 技能

SIGAA 是一个基于 JSF 的 Web 系统,没有公开的 REST API。所有自动化操作均使用经过身份验证的 Web 抓取(curl + Python)。

前提条件

必需的环境变量:

bash
export SIGAA_URL=https://sigaa.unb.br # 机构基础 URL(末尾无斜杠)
export SIGAA_USER=241104251 # 登录名:学号或 CPF(因机构而异)
export SIGAA_PASSWORD=yourpassword # 您的 SIGAA 密码

  • - 各机构的用户名格式 → 参见 references/institutions.md
  • 切勿将凭据作为命令行参数传递 — 仅使用环境变量

快速开始

1. 登录

bash
source scripts/sigaa_login.sh

设置 $SIGAACOOKIEFILE 和 $SIGAAUSERID


Cookie 文件权限为 chmod 600,并在 shell 退出时自动删除

2. 学生操作

bash
bash scripts/sigaa_student.sh status # 基本信息 + 当前课程
bash scripts/sigaa_student.sh enrollments # 当前学期课程
bash scripts/sigaa_student.sh enrollment-result # 选课申请状态(已提交 / 已批准 / 已拒绝)
bash scripts/sigaa_student.sh grades # 成绩
bash scripts/sigaa_student.sh history # 完整学业历史
bash scripts/sigaa_student.sh schedule # 课程表

3. 教师操作

bash
bash scripts/sigaa_professor.sh classes # 当前学期课程
bash scripts/sigaaprofessor.sh students id> # 某课程的学生名单
bash scripts/sigaa_professor.sh attendance # 待处理的考勤
bash scripts/sigaa_professor.sh schedule # 教学日程

JSF 导航模式

SIGAA 使用 JavaServer Faces (JSF) 和 jsCookMenu。所有菜单操作都需要使用最新的 ViewState 和 jscook_action 进行 POST 请求:

bash
VS=$(curl -s -b $SIGAACOOKIEFILE -c $SIGAACOOKIEFILE \
${SIGAA_URL}/sigaa/portais/discente/discente.jsf | \
grep -oP name=javax\.faces\.ViewState[^>]*value=\K[^]+ | head -1)

curl -s -L -b $SIGAACOOKIEFILE -c $SIGAACOOKIEFILE \
-X POST ${SIGAA_URL}/sigaa/portais/discente/discente.jsf \
-d menu%3Aformmenudiscente=menu%3Aformmenudiscente \
-d id=${SIGAAUSERID} \
--data-urlencode jscookaction=menuformmenudiscentediscentemenu:A]#{BEAN.method} \
--data-urlencode javax.faces.ViewState=${VS}

完整操作参考 → references/student-guide.md 和 references/professor-guide.md

解析响应

python
import re, html as h

def clean_html(content):
content = re.sub(r]>.?, , content, flags=re.DOTALL)
content = re.sub(r]>.?, , content, flags=re.DOTALL)
text = re.sub(r<[^>]+>, , content)
return h.unescape(re.sub(r[ \t]+, , text))

def extracttablerows(html_content):
content = re.sub(r]>.?, , html_content, flags=re.DOTALL)
rows = re.findall(r]>(.?), content, re.DOTALL)
result = []
for row in rows:
cells = re.findall(r]>(.?), row, re.DOTALL)
clean = [h.unescape(re.sub(r<[^>]+>|\s+, , c)).strip() for c in cells if c.strip()]
if clean:
result.append(clean)
return result

安全说明

  • - 凭据仅通过环境变量传递 — 切勿作为 CLI 参数传递(防止 shell 历史记录泄露)
  • Cookie 文件:自动创建并设置 chmod 600,通过 trap 在 shell 退出时自动删除
  • 速率限制:请求间延迟 0.5 秒(内置于脚本中)
  • 会话范围:SIGAA 会话在约 20 分钟无活动后过期 — 如果被重定向到登录页面,请重新加载登录
  • 网络目标:脚本仅联系 $SIGAA_URL 和从登录重定向派生的 CAS SSO 主机 — 运行前请确认这些与您的机构匹配

常见问题

症状解决方法
Credenciais inválidas检查机构的用户名格式(参见 references/institutions.md)
Nenhuma turma neste semestre
运行 enrollment-result — 状态可能为 SUBMETIDA(待处理) | | JSF POST 返回门户页面 | ViewState 过期 — 在 POST 前重新获取门户 | | 会话重定向到登录 | Cookie 过期 — 重新加载 sigaa_login.sh | | Você não pode tentar re-enviar | 重复使用 LT 令牌 — 始终获取新的登录页面 |

参考

  • - references/institutions.md — 支持的机构、登录 URL、用户名格式
  • references/student-guide.md — 完整的学生门户指南、所有 JSF 操作、解析技巧
  • references/professor-guide.md — 教师门户、成绩/考勤工作流程

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 sigaa-1776282213 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 sigaa-1776282213 技能

通过命令行安装

skillhub install sigaa-1776282213

下载

⬇ 下载 sigaa v1.1.0(免费)

文件大小: 12.72 KB | 发布时间: 2026-4-16 15:51

v1.1.0 最新 2026-4-16 15:51
Security hardening: credentials via env vars only (no CLI args), cookie files chmod 600 + auto-deleted on exit, password unset after login, rate limiting, declared required binaries (curl, python3, grep)
返回顶部