Canvas课程工具
项目描述
canvas-course-tools
canvas-course-tools是在阿姆斯特丹自由大学的物理实验课中创建的,旨在极大地减少为教职员工和助教创建包含照片的课程名单所需的时间。还为学生们创建了名单,以便他们可以轻松查找分配的实验和助教。此外,我们还用它来在Canvas上创建学生小组以进行同行反馈。
此软件包提供了canvas
命令行工具。在注册Canvas URL和API密钥(您可以在个人资料设置页面生成)后,此工具允许您列出课程的不同部分中的课程和学生。输出具有轻量级标记,非常适合保存为文本文件。然后可以轻松复制和移动文件中的行以创建学生小组。然后,该文件可以由canvas templates
命令解析,以根据文本文件渲染模板。这允许创建包含每个学生简短笔记的课程名单,甚至可以包含照片的课程名单(如果您提供照片)。
您还可以使用此工具在Canvas上根据分组列表文件创建分组和分组集。这些分组可用于评分或同行反馈。特别是对于评分,查看学生小组成员而不是在长名单中查找特定学生可能会非常有帮助。
安装
您可以在任何Python环境中使用pip
进行安装,但推荐使用pipx来安装canvas-course-tools。
$ pipx install canvas-course-tools
canvas
实用工具在终端中可用。
教程
初始设置
首先,我们需要告诉canvas
实用工具它可以从哪里找到您机构的Canvas安装。如果您不带参数运行canvas
,它将显示支持的命令列表。
$ canvas
Usage: canvas [OPTIONS] COMMAND [ARGS]...
╭─ Options ────────────────────────────────────────────────────────────╮
│ --version Show the version and exit. │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────╮
│ courses Add, remove and list Canvas courses. │
│ groups Create Canvas groups based on group lists. │
│ servers Add, remove and list Canvas servers. │
│ students Search for or list students. │
│ templates Generate files based on templates and group lists. │
│ tui Open Textual TUI. │
╰──────────────────────────────────────────────────────────────────────╯
看起来servers
命令可能是一个很好的匹配。让我们检查一下。
$ canvas servers
Usage: canvas servers [OPTIONS] COMMAND [ARGS]...
Add, remove and list Canvas servers.
╭─ Options ────────────────────────────────────────────────────────────╮
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────╮
│ add Register an alias for a server with corresponding access │
│ token. │
│ list List the registered servers. │
│ remove Remove server from configuration. │
╰──────────────────────────────────────────────────────────────────────╯
让我们尝试使用add
子命令。
$ canvas servers add
Usage: canvas servers add [OPTIONS] ALIAS URL TOKEN
Try 'canvas servers add --help' for help.
╭─ Error ──────────────────────────────────────────────────────────────╮
│ Missing argument 'ALIAS'. │
╰──────────────────────────────────────────────────────────────────────╯
显然我们缺少一个名为ALIAS
的东西,但输出并不是很有帮助。然而,它确实建议包含--help
参数。如果我们这样做,我们会得到
$ canvas servers add --help
Usage: canvas servers add [OPTIONS] ALIAS URL TOKEN
Register an alias for a server with corresponding access token.
Example:
canvas servers add school http://canvas.school.example.com/ 123~secret
╭─ Options ────────────────────────────────────────────────────────────╮
│ --force -f If alias already exists, force overwrite. │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────╯
这有助于!输出甚至给出了如何使用该命令的示例。在这里,别名school
用于引用您机构的Canvas。当需要引用Canvas服务器时,您可以在其他canvas
命令中使用此别名。123~secret
应该是您在Canvas账户页面生成的访问令牌的文本。有关如何生成令牌的更多信息,请参阅Canvas文档。您只能查看一次令牌。如果您丢失了它,可以从Canvas个人资料页面撤销它并生成一个新的。一旦您创建了令牌,就可以使用它通过上面的canvas servers add
命令添加服务器。如果成功,您的Canvas安装应该会出现在列表中。
$ canvas servers list
────────────────────────────────────────────
Alias URL
────────────────────────────────────────────
school http://canvas.school.example.com/
────────────────────────────────────────────
现在我们已经注册了Canvas服务器,我们可以使用该实用工具做一些工作。在本教程的其余部分,我们将简要介绍如何使用不同的命令。不要忘记,您可以在任何命令的末尾添加--help
以获取该命令的描述及其不同的用法。
列出和添加课程
您可以使用以下方法列出您账户可访问的所有课程:
$ canvas courses list school
──────────────────────────────────────────────────────────────────────
ID Alias Name Term
──────────────────────────────────────────────────────────────────────
12345 Physics 101 2023-2024
23456 Calculus 102 2022-2023
──────────────────────────────────────────────────────────────────────
请注意,“别名”字段仍然为空,因为我们还没有添加课程。您可以通过创建这样的别名来为未来的参考添加课程:
$ canvas courses add phys101 school 12345
我们首先指定了别名(只要不包含空格,您可以选择任何您喜欢的名称),然后指定了服务器别名和课程ID。我们可以看到这是成功的。
$ canvas courses list school
──────────────────────────────────────────────────────────────────────
ID Alias Name Term
──────────────────────────────────────────────────────────────────────
12345 phys101 Physics 101 2023-2024
23456 Calculus 102 2022-2023
──────────────────────────────────────────────────────────────────────
要仅列出已注册的课程,我们可以省略canvas服务器作为参数。
$ canvas courses list
──────────────────────────────────────────────────────────────────────
ID Alias Name Term
──────────────────────────────────────────────────────────────────────
12345 phys101 Physics 101 2023-2024
──────────────────────────────────────────────────────────────────────
现在我们可以使用此课程别名(phys101
)在其他canvas
命令中。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。
源分布
构建发行版
canvas_course_tools-0.10.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b793f077d7d1b4c4f272bf29f7e420b7787f2109e6487d52e0b61a3fe0abf21e |
|
MD5 | 68b10964f97dfeef0c3086803a87a135 |
|
BLAKE2b-256 | 7ff1d064aa9584276a7dae3fc794b43512c2875fd650fb0c6db6493c1f8c3b8e |
canvas_course_tools-0.10.3-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8ca27538a674e875d4a26c48439cc0e5332be50d2955f85c1d172dd0139a35c1 |
|
MD5 | 53cfd3cfc7c4f425b020a5215dec925f |
|
BLAKE2b-256 | 0fe8c267695271b8537ef2e26dda68c2d0fdcb72e74153e4a58b97784af4e3dc |