14 个稳定版本
新版本 2.0.7 | 2024 年 8 月 20 日 |
---|---|
2.0.6 | 2024 年 8 月 8 日 |
2.0.4 | 2024 年 8 月 2 日 |
1.0.6 | 2024 年 7 月 1 日 |
1.0.5 | 2024 年 6 月 30 日 |
1518 在 网页编程
每月 756 次下载
40KB
684 代码行
Shuller
Rule34 和其他可实现网站的链接获取库
注意想了解更多关于此库的信息,请查看 crates.io 上的 doc.rs
示例 (使用宏代替)
use shuller::prelude::*;
async fn example() {
let instance: Posts = R34Params::init()
.positive_tags(vec!["dark", "fish"])
.negative_tags(vec!["ai_generated"])
.limit(3)
.download() // or url_generate()
.await
.unwrap();
println!("{:#?}", instance.get_urls_ext())
}
通过宏的示例
- 通过参数生成 URL 并手动获取 Posts 数据结构
use shuller::prelude::*; async fn macro_normal() { let instance = R34!( p = vec!["dark", "fish"], n = vec!["ai_generated"], limit = 2, page = 2 ) .download() .await .unwrap(); // handle error }
- 获取 Posts 数据结构,宏包含
use shuller::prelude::*; async fn macro_download() { let instance = R34!(D; p = vec!["dark", "fish"], n = vec!["ai_generated"], limit = 2, page = 2 ) .unwrap(); // handle error }
- 通过宏生成 URL,它只是一个 URL。
use shuller::prelude::*; async fn macro_url() { let instance = R34!(U; p = vec!["dark", "fish"], n = vec!["ai_generated"], limit = 2, page = 2 ); }
- 生成随机参数和 URL,并下载具有随机 ID 的 Posts
use shuller::prelude::*; async fn r() { let params = R34!(R;); let url = R34!(R; D); let posts = R34!(R; U).unwrap(); // handle error }
依赖项
~5–15MB
~229K SLoC