sakai api 获得某站点所有学生的成绩的python代码
时间: 2024-05-07 09:23:32 浏览: 80
以下是使用 Sakai API 获取某站点所有学生的成绩的 Python 代码示例:
```python
import requests
import json
# 替换成自己的 Sakai API Key 和站点 ID
api_key = 'your_api_key'
site_id = 'your_site_id'
# 构造 API 请求 URL
url = f'https://your_sakai_instance/direct/gradebook/site/{site_id}.json'
# 添加 API Key 到请求头部
headers = {'X-Authorization': api_key}
# 发送 GET 请求
response = requests.get(url, headers=headers)
# 解析响应 JSON,并提取所有学生的成绩信息
if response.status_code == 200:
grades = json.loads(response.content.decode())
for student in grades['students']:
student_id = student['userId']
for grade in student['grades']:
item_name = grade['name']
score = grade['points']
print(f"Student {student_id} scored {score} on {item_name}")
else:
print(f"Failed to retrieve grades. Error code: {response.status_code}")
```
请确保替换示例代码中的 `your_api_key` 和 `your_site_id` 为您自己的 API Key 和站点 ID。并且需要安装 `requests` 模块用于发送 HTTP 请求,可以通过 `pip install requests` 安装。
阅读全文