baidu_trans

百度翻译API

Install

toml [dependencies] baidu_trans = { version = "0.7.5", features = [] } anyhow = "1.0.66" dotenv = "0.15.0"

examples

blocking feature:

```rust

use baidu_trans::{blocking::Client, config::Config, lang::Lang};

fn main() -> anyhow::Result<()> { dotenv::dotenv()?; let appid = dotenv::var("APPID")?; let appsecret = dotenv::var("APPSECRET")?;

let client = Client::new(Config::new(app_id, app_secret));

client.lang(Lang::Auto, Lang::Zh);
let resp = client.translate(
    "As we discussed in Chapter 1, Hello Rust!, stack variables are preferred thanks to

their low overhead and speed compared to heap-allocated data, which automatically introduces overhead thanks to the necessary heap pointer.", )?;

if resp.error_code.is_some() {
    return Err(anyhow::Error::msg(resp.error_msg.unwrap()));
}

dbg!(resp);

Ok(())

} ```

aio feature

in cargo.toml: toml [dependencies] anyhow = "1.0.66" baidu_trans = { version = "0.7.5", features = [ "aio"] } tokio = { version = "1.21.2", features = ["full"] } dotenv = "0.15.0"

```rust use baidu_trans::{aio::Client, config::Config, lang::Lang};

[tokio::main]

async fn main() -> anyhow::Result<()> { dotenv::dotenv()?; let appid = dotenv::var("APPID")?; let appsecret = dotenv::var("APPSECRET")?;

let client = Client::new(Config::new(app_id, app_secret));

client.lang(Lang::Auto, Lang::Zh);
let resp = client
    .translate(
        "As we discussed in Chapter 1, Hello Rust!, stack variables are preferred thanks to

their low overhead and speed compared to heap-allocated data, which automatically introduces overhead thanks to the necessary heap pointer.", ) .await?;

if resp.error_code.is_some() {
    return Err(anyhow::Error::msg(resp.error_msg.unwrap()));
}

dbg!(resp);

Ok(())

} ```

features