使用 Google 表格对 Google 课堂作业评分

Grading Google Classroom assignments using Google Sheets

我正在尝试对一个约有 200 名学生的 Google 教室进行评分,并且我已经成功地在 .csv 文件中对每个学生进行了评分。有没有一种方法可以让您从 Google Sheet 自动填写和提交 Google 课堂的成绩和评论?

我已经尝试读取 .csv 文件并且在 Python 脚本中工作正常,但是将数据写入 Google 课堂一直是个问题。

使用 Classroom API,如果您有 Google 教室中的学生 ID 或学生电子邮件,您应该能够将成绩推送到您的课程。但是,您不能推送评论。

推送成绩的工作流程如下:

  1. 如果您没有课堂课程 ID,请通过 courses.list 端点检索它。把它放在手边以备将来使用。
  2. 使用步骤 1 中的课程 ID,通过以下方式创建 CourseWork 项目 coursework.create 函数。您必须为您的每项任务执行此操作。确保保留与每项作业关联的课程作业 ID 以供将来参考。
  3. 如果您只有学生的电子邮件,则必须使用 students.get 端点获取他们的课堂 ID。这还需要步骤 1 中的课程 ID。
  4. 每个 CourseWork 都有一个针对每个学生的学生提交对象,因此您需要为每个学生收集这些学生提交 ID 以进行作业。您可以使用 studentsubmissions.get 端点执行此操作。
  5. 使用这些学生提交的 ID,将给定作业的学生成绩推送到 studentsubmissions.patch 端点。您需要课程、课程作业和学生提交 ID 才能提高成绩。
  6. 最后,return 每个等级都具有 studentsubmissions.return 终点。同样,您需要为此提供课程、课程作业和学生提交 ID。

如果您使用的是电子表格,我想象一个包含执行此操作所需的所有数据的示例结构如下所示:

| Student Email | Student ID    | Assignment 1 ID  | Submission ID    | Assignment 1 Grade |
| ------------- |:-------------:|:----------------:| ----------------:| ------------------ |
| Email 1       | student id 1  | courseWork 1 ID  | submission 1 ID  | grade #1           |
| Email 2       | student id 2  | courseWork 2 ID  | submission 2 ID  | grade #1           |
| ...           | ...           | ...              | ...              | ...                |

第 3、4 和 5 列将针对您的每项作业重复。可以找到有关如何编写此代码的文档 here and here. If you're using Google Sheets, you can make an Apps Script 来完成所有这些。

关于评论功能,同样,我们现在不支持它,但我鼓励您可以按照报告的功能请求进行更新 here。我还建议点击“我也是!”在列出的问题的顶部,并发布有关您的用例和需求的任何评论。

希望对您有所帮助!