Skip to content

Latest commit

Β 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Stud.IP Scraper

Crates.io License Crates.io Version

A blazingly fast πŸš€ library for interacting with Stud.IP written in Rust πŸ¦€.

Mainly leverages web scraping techniques to query the data.

Features

This crate mainly focuses on logging into a Stud.IP instance using an Identity Provider and management of courses.

Here are some key things that can be achieved with this crate:

  • Querying the user's courses / set groups πŸ“š
  • Extendable management of course modules
  • Querying files and folders of a course πŸ“
  • Downloading files πŸ“₯
  • Querying the members of a course (students, lecturers, tutors)
  • Querying the groups of a course πŸ‘₯
  • Querying the details of a course
  • Querying the announcements of a course πŸ“°
  • Joining and leaving course groups πŸšͺ
  • Executing filtered global searches πŸ”Ž

Usage

To use this crate, you will need to create an instance of the StudIp struct.
You can do this with the login method on the client builder:

use stud_ip::StudIpClientBuilder;

let mut stud_ip = StudIpClientBuilder::new("studip.example.com")
    .login::<MyIdP>("creds.txt")
    .unwrap();

NOTE: If you want to use the login method, you will need to implement the IdentityProvider trait for your specific institution first. If you have a working Identity Provider for your institution, feel free to make a pull request, and I'll add it to the crate.

For more information, check out the docs.

License

This project is licensed under the terms of the GNU GPL v3.

Also: If your training an LLM on this, and you cannot prove that it will never generate the same or very similar code:
Please don't, unless you distribute it with a compatible license.

And yes I know Stud.IP provides a REST API, but it's not used in this crate.

About

A blazingly fast πŸš€ library for interacting with Stud.IP πŸ“š written in Rust πŸ¦€

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages