0

我正在使用 CanvasAPI 开发用于自动评分作业的 Python 脚本,CanvasAPI 是 Python 中用于 Canvas 学习管理平台的 API 包装器。在研究文档的过程中,我可以成功地在 Python 中针对一些参数发出 curl 命令。例如,下面的此转换用于对单个提交进行评分:

根据 Canvas API 文档的 Curl 命令

PUT /api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id

 submission[posted_grade]

通过 CanvasAPI Python 包装器变成这样

edit(submission={'posted_grade': 'grade'})

我遇到困难的地方是量规的更复杂的参数。使用与上面相同的 PUT 请求,文档中的语法如下:

rubric_assessment[criterion_id][points]

我有:

edit(rubric_assessment[{'id': 'criterion_9980'},{'points', '37'}])

但是,我收到以下错误:

Traceback (most recent call last):
  File "C:\Users\danie\AppData\Local\Temp\atom_script_tempfiles\2021528-29488-1eagfyw.k8hw", line 39, in <module>
    submission = assignment.get_submission(10370)
  File "C:\Users\danie\AppData\Local\Programs\Python\Python39\lib\site-packages\canvasapi\assignment.py", line 203, in get_submission
    response = self._requester.request(
  File "C:\Users\danie\AppData\Local\Programs\Python\Python39\lib\site-packages\canvasapi\requester.py", line 255, in request
    raise ResourceDoesNotExist("Not Found")
canvasapi.exceptions.ResourceDoesNotExist: Not Found

我怀疑我在沿线某处弄乱了语法。有什么建议么?非常感谢所有帮助。

4

0 回答 0