use clawser_browser::Browser;
#[tokio::main]
async fn main() {
let browser = Browser::builder()
.headful()
.random()
.build().await
.expect("failed to create browser");
let page = browser.navigate("https://www.youtube.com").await
.expect("navigate failed");
tokio::time::sleep(std::time::Duration::from_secs(3)).await;
println!("[1] Capturing MHTML...");
let mhtml = page.capture_mhtml().await.expect("mhtml failed");
std::fs::write("youtube.mhtml", &mhtml).expect("write failed");
println!(" Saved youtube.mhtml ({} bytes)", mhtml.len());
println!("[2] Capturing HTML via DOM...");
let html = page.capture_html().await.expect("html failed");
std::fs::write("youtube.html", &html).expect("write failed");
println!(" Saved youtube.html ({} bytes)", html.len());
let script_count = html.matches("<script").count();
println!(" <script> tags found: {}", script_count);
browser.shutdown().await.expect("shutdown failed");
println!("\nDone. Open youtube.mhtml in Chrome to verify.");
}