11 个版本 (7 个重大更新)
使用旧的 Rust 2015
0.8.1 | 2018年4月27日 |
---|---|
0.7.0 | 2018年3月5日 |
#6 in #my-anime-list
每月 34 次下载
62KB
1K SLoC
mal-rs
该库的目的是提供对 MyAnimeList API 的高级访问。
撰写本文时,API 的所有功能都已实现,包括
- 添加、更新、删除和读取用户的动画和漫画列表条目
- 通过名称搜索动画和漫画
- 从用户的动画和漫画列表获取其他信息和统计信息
- 验证用户凭据
使用方法
默认情况下,该库支持同时与动画和漫画一起工作。如果您需要同时搜索/操作用户的动画和漫画列表,只需将 mal
作为依赖项添加到您的 Cargo.toml
文件中即可
[dependencies]
mal = "0.8"
如果您只需处理一种类型的列表,则应使用以下功能门来减少最终二进制文件大小和编译时间
如果您只需搜索动画/在用户的列表中处理动画,请使用 anime
功能
[dependencies.mal]
version = "0.8"
default-features = false
features = ["anime"]
如果您只需搜索漫画/在用户的列表中处理漫画,请使用 manga
功能
[dependencies.mal]
version = "0.8"
default-features = false
features = ["manga"]
示例
以下示例将更新用户列表中的现有动画
extern crate mal;
use mal::MAL;
use mal::list::Status;
fn main() {
// Create a new MAL instance
let mal = MAL::new("username", "password");
// Read the user's anime list
let list = mal.anime_list().read().unwrap();
// Find Toradora in the list entries
let mut toradora = list
.entries
.into_iter()
.find(|e| e.series_info.id == 4224)
.unwrap();
// Set new values for the list entry
// In this case, the episode count will be updated to 25, the score will be set to 10, and the status will be set to completed
toradora.values
.set_watched_episodes(25)
.set_score(10)
.set_status(Status::Completed);
// Update the anime on the user's list
mal.anime_list().update(&mut toradora).unwrap();
}
有关更多示例,请参阅 docs.rs 上的文档。
依赖项
~18–27MB
~487K SLoC