Skip to main content

Library which uses Canvasapi (see https://canvasapi.readthedocs.io) to provide a CanvasRobot class.

Project description

CanvasRobot

Library which uses Canvasapi (patched to allow better user search) to provide a CanvasRobot class for GUI and commandline use (Rich)

Uses

CanvasAPI

Used

In word2quiz library.

Not yet ready for general use...

Examples:

import rich
import canvasrobot as cr

if __name__ == '__main__':

    console = rich.console.Console(width=160, force_terminal=True)

    robot = cr.CanvasRobot(reset_api_keys=False,
                           console=console)

    # robot.update_database_from_canvas()
    robot.create_folder_in_all_courses('Tentamens')



    # result = robot.enroll_in_course("", 4472, 'u752058',
    # 'StudentEnrollment') #  (enrollment={'type': 'StudentEnrollment'}
    
    # user = robot.search_user('u752058')
    # print(user)
    # if not user:
    #   print(robot.errors)

    #COURSE_ID = 9999  # test course
    #result = robot.create_folder_in_course_files(COURSE_ID, 'Tentamens')

    # print(robot.course_metada(COURSE_ID))
    # print(robot.unpublish_folderitems_in_course(COURSE_ID,
    #                                            foldername,
    #                                            files_too=True))

    #course = robot.get_course(COURSE_ID)
    # tab = robot.get_course_tab_by_label(COURSE_ID, "Files")
    # print(tab.visibility)

    # for course_id in (COURSE_ID, COURSE_ID2):
    #     result = robot.create_folder_in_course_files(course_id, 'Tentamens')

    # result = robot.unpublish_subfolder_in_all_courses(foldername,
    #                                                  files_too=True,
    #                                                  check_only=True)
    # if course_ids_missing_folder:
    #    logging.info(f"Courses with missing folder {foldername}: {course_ids_missing_folder}")


    # QUIZZES -----------------------------

    # filename = 'Q_A.docx'
    # robot.create_quizzes_from_document(filename=filename,
    #                                    course_id=COURSE_ID,
    #                                    question_format='Vraag {}. Vertaal:',
    #                                    adjust_fontsize=True,
    #                                    testrun=False
    #                                    )

[PyPI version]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

canvasrobot-0.8.17.tar.gz (152.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

canvasrobot-0.8.17-py3-none-any.whl (67.0 kB view details)

Uploaded Python 3

File details

Details for the file canvasrobot-0.8.17.tar.gz.

File metadata

  • Download URL: canvasrobot-0.8.17.tar.gz
  • Upload date:
  • Size: 152.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.5

File hashes

Hashes for canvasrobot-0.8.17.tar.gz
Algorithm Hash digest
SHA256 277bdcfa304a644c76f15a27612aeacfabaa9e6f9b98e641661038f6eeb7b8a8
MD5 73f0878cf35b021b7b001c947e7ddc21
BLAKE2b-256 564dfd1fee5022a1d48c4360a75a641e5aa3f156704928e1480ce6e97aea7433

See more details on using hashes here.

File details

Details for the file canvasrobot-0.8.17-py3-none-any.whl.

File metadata

File hashes

Hashes for canvasrobot-0.8.17-py3-none-any.whl
Algorithm Hash digest
SHA256 4d1ee0f875626930b8f479c65df2611a43f4ef50087d89e5595b314ff7550642
MD5 db09e927e691c1979513858034ea958e
BLAKE2b-256 78c9ecae16ef8b86580cc7a7770a0d9a2a4c4468162e1f2b5e8a3a27c66a5b85

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page