#source #find #search #library

sauce-api

用于搜索图像原始来源的API

16个版本 (1个稳定版本)

1.0.0 2022年11月24日
0.9.3 2022年1月23日
0.9.2-alpha.22021年12月29日
0.9.1 2021年9月7日
0.5.1 2020年11月17日

Web编程 中排名第2015

每月下载量42

MIT许可证

21KB
484

sauce-api

documentation crates.io

sauce-api 是一个用于查找低质量或裁剪图像的源图像的API。
目前它仅适用于动漫风格的图像,但我希望将来也能支持其他类型的图像。

由于使用了 reqwest,它是异步的,并且与Tokio配合最佳。

支持来源

如果您想看到更多,请提交PR或提交一个issue请求!

用法

IQDB

use sauce_api::source::{Output, iqdb::Iqdb, Source};
use sauce_api::error::Error;

async fn find_source(url: &str) {
    let source = Iqdb::create(()).await.unwrap();
    let res: Result<Output, Error> = source.check(url).await; // Can take some time as IQDB is a bit slow.

    match res {
        Ok(result) => {
            println!("Found results! {:?}", result);
        }
        Err(e) => {
            eprintln!("Unable to find results: {}", e);
        }
    }
}

SauceNao

use sauce_api::source::{Output, saucenao::SauceNao, Source};
use sauce_api::error::Error;

async fn find_source(url: &str, api_key: &str) {
    let source = SauceNao::create(api_key.to_string()).await.unwrap();
    let res: Result<Output, Error> = source.check(url).await;

    match res {
        Ok(result) => {
            println!("Found results! {:?}", result);
        }
        Err(e) => {
            eprintln!("Unable to find results: {}", e);
        }
    }
}

要求

sauce-api 默认使用原生TLS框架,有关具体详情请参阅此处。您可以通过启用 rustls 功能来选择使用 rustls,如下所示

sauce-api = { version = "1.0.0", features = ["rustls"] }

依赖关系

~4–16MB
~242K SLoC