我正在尝试使用
Google Classroom API
获取所有课程的到期作业/课程作业列表。我使用以下代码获取课程列表:
results = service.courses().list(pageSize = 10).execute()
courses = results.get('courses',[])
一旦获得所有课程的列表,我就会遍历每个课程并尝试提供
courseID
以便使用 courses.courseWork.list
方法获取课程作业列表,但我收到错误。
我写了以下代码:
for course in courses :
print(course['name'])
print "Assignments you have due in this course : "
print course[u'id']
course_work_results = service.courses().courseWork().list().execute()
print course_work_results
由于我没有在任何地方提供
courseID
(我需要知道如何做),所以我收到以下错误:
Traceback (most recent call last):
File "classroom.py", line 53, in <module>
course_work_results = service.courses().courseWork().list().execute()
File "/usr/local/lib/python2.7/dist-packages/googleapiclient/discovery.py", line 727, in method
raise TypeError('Missing required parameter "%s"' % name)
TypeError: Missing required parameter "courseId"
错误是由于线路造成的
course_work_results = service.courses().courseWork().list().execute()
如何解决这个问题?
您所要做的就是在 .list() 括号中添加
courseId={the course id}
作为参数。对于身份验证错误,您只需将范围“https://www.googleapis.com/auth/classroom.coursework.me”添加到范围列表中,删除令牌文件,然后运行程序并使用以下命令再次进行身份验证新的范围。希望这有帮助!