#download #url #link #wrote #couldn-t

bin+lib traxex

通过 URL 链接下载文件的库

2 个版本

0.1.1 2024 年 1 月 19 日
0.1.0 2019 年 8 月 5 日

#1 in #wrote

每月 34 次下载

MIT 许可协议

220KB
227

Traxex

LICENSE Crates.io Version Crates.io Coverage Status

Linux: 构建状态 Windows: 构建状态

简介

Traxex 是我妻子最喜欢的 Dota 英雄的名字,所以我选择了这个名字。当我尝试在我正在工作的另一个 Rust 应用程序中下载一些文件时,我找不到像 wget 或类似的易于使用的库。因此,我编写了这个库,一个非常容易使用的下载库。因为我是一个 Rust 新手,所以可能有些代码可以改进。请通过 issue 或 pull request 给我一些建议。提前感谢。

用法

有一个二进制文件,可以用来通过 URL 下载文件,还有一个库可以用于您的代码中。

二进制文件用法

USAGE:
    traxex.exe [OPTIONS] <url>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -o, --output <output>    Specify the local output filename or directory

ARGS:
    <url>

库用法

只有一个公开的 download 方法可以使用。此方法有两个参数,第一个是 &str URL 链接,第二个是输出文件夹或输出文件名 Option<&str>。如果您不想提供文件名,可以将第二个参数留为 None。它将根据 URL 路径或 Content-Disposition 头部生成一个给定的文件名。此方法可以返回一个 Result<String>,这是下载文件的文件名。

extern crate lib_traxex;
use lib_traxex::download::download;

fn main() {
    let url_str = "https://raw.githubusercontent.com/zhangzhishan/blogpics/dev/traxex.jpg";

    match download(url_str, None) {
        Err(why) => panic!("couldn't write to : {}", why.to_string()),
        Ok(display) => println!("successfully wrote to {}", display)
    }
}

参考

Python wget

依赖项

~22–35MB
~603K SLoC