12 个版本
0.5.0 | 2024 年 3 月 7 日 |
---|---|
0.4.1 | 2023 年 12 月 30 日 |
0.3.8 | 2023 年 10 月 3 日 |
0.3.4 | 2023 年 9 月 30 日 |
在 #danbooru 中排名 #2
37KB
886 行
booru
Rust 的异步 Booru 客户端。
注意:自 2023 年 9 月以来,该项目已从 booru-rs 分支出来,但已经有很多变化。
概述
客户端目前支持
- Gelbooru
- Safebooru
- Danbooru
- Rule 34
示例
请使用 Client
trait 将 use booru::client::Client;
带入作用域。
use booru::{
client::{gelbooru::GelbooruClient, generic::*, Client},
model::gelbooru::GelbooruRating,
};
#[tokio::main]
async fn main() {
let posts = GelbooruClient::builder()
.tag("kafuu_chino")
.tag("2girls")
.rating(GelbooruRating::General)
.sort(Sort::Score)
.limit(5)
.random()
.blacklist_tag(GelbooruRating::Explicit)
.build()
.get()
.await
.expect("There was an error retrieving posts from the API");
}
自定义 HTTP 客户端
如果您想自定义 HTTP 客户端,可以使用 builder_with_http_client
use booru::{
client::{gelbooru::GelbooruClient, generic::*, Client},
model::gelbooru::GelbooruRating,
};
use reqwest;
use std::time::Duration;
#[tokio::main]
async fn main() {
let http_client_builder = reqwest::ClientBuilder::new()
.timeout(Duration::from_secs(10));
let posts = GelbooruClient::builder_with_http_client(http_client_builder)
.tag("kafuu_chino")
.limit(5)
.build()
.get()
.await
.expect("There was an error retrieving posts from the API");
}
依赖项
~4–18MB
~239K SLoC