Sample code for 30+ languages & platforms
Rust

Extract all HTML Objects from a Web Page

See more MHT / HTML Email Examples

Demonstrates how to download a Web page (at a URL) and extract all HTML objects. Eg. images, links, CSS files, JavaScript files, etc.

Chilkat Rust Downloads

Rust

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

let mht = chilkat::Mht::new();

// Download a URL into an in-memory MHT web archive contained
// in a string variable.
// The following URL is randomly picked and was valid at the time of writing this example:
let Ok(mht_doc) = mht.get_mht("https://www.tetonlodge.com/") else {
    println!("{}", mht.last_error_text());
    return;
};

// Extract the HTML and embedded objects:
let unpack_dir = "C:/AAWorkarea/mhtTesting/".to_string();
let html_filename = "lodge.html".to_string();
let parts_subdir = "objects".to_string();

// Extract to C:/AAWorkarea/mhtTesting/lodge.html.
// images and other embedded objects are placed in
// C:/AAWorkarea/mhtTesting/objects.  Directories are automatically
// created if they don't already exist.
if mht.unpack_mht_string(&mht_doc, &unpack_dir, &html_filename, &parts_subdir).is_err() {
    println!("{}", mht.last_error_text());
} else {
    println!("Unpacked!");
}