#web-scraping #stud-ip

stud_ip_scraper

用于与Stud.IP交互的闪电般快的🚀库📚

3个不稳定版本

0.2.0 2024年3月11日
0.1.1 2024年3月8日
0.1.0 2024年3月8日

#327 in HTTP客户端

每月43次下载

GPL-3.0 许可证

73KB
1.5K SLoC

Stud.IP Scraper

Crates.io License Crates.io Version

一个用于与Stud.IP交互的闪电般快的🚀库,用Rust 🦀 编写。
这允许与Stud.IP在线教育平台📚交互。

主要利用网络爬虫技术查询数据。

功能

此crate主要关注使用身份提供者登录Stud.IP实例以及课程管理。

以下是使用此crate可以完成的一些关键🔑事情📦

  • 查询用户的课程 🔎📚
  • 可扩展的课程模块管理 💹🛠
  • 查询课程中的文件和文件夹 🔎📁
  • 下载文件 📥💨
  • 查询课程成员(学生、讲师、辅导教师) 🔎👨‍🏫
  • 查询课程小组 🔎👥
  • 加入和离开课程小组 🚪

用法

要使用此crate,您需要创建一个StudIp结构实例。您可以使用login方法完成此操作

use stud_ip::StudIp;

let stud_ip = StudIp::login<MyIdP>("credentials.txt", "studip.example.com").unwrap();

注意:如果您想使用login方法,您需要首先为您的特定机构实现IdentityProvider trait。如果您为您的机构有一个工作的身份提供者,请随意发起拉取请求,我会将其添加到crate中。

有关更多信息,请参阅文档

许可证

本项目受GNU GPL v3条款的约束。

此外:如果您在此上训练一个LLM,并且您无法证明它将永远不会生成相同的或非常相似的代码
请勿使用,除非您与兼容的许可证一起分发。

是的,我知道Stud.IP提供了一个REST API,但在此crate中没有使用。

依赖项

~10–23MB
~373K SLoC