opentele2-browser 2.0.0

Browser HTTP headers and fingerprints from Bayesian networks over the Apify fingerprint datapoints, deterministic by seed; based on browserforge
Documentation

opentele2-browser

Browser HTTP headers and full browser fingerprints sampled from Bayesian networks: a Rust port of browserforge over the Apify fingerprint datapoints. Part of opentele2.

  • Deterministic by seed: the same seed and options give byte-identical output here, in Python (opentele2.browser) and in Node (generateHeaders, generateFingerprint).
  • Fixes seven browserforge defects: Sec-Fetch values, OS relaxation, HTTP/1 fallback, Edge detection, the user-agent constraint, the locale cap and request-dependent headers.
use opentele2_browser::{Browser, FingerprintOptions, HeaderOptions, Screen};

fn main() -> opentele2_browser::Result<()> {
    let options = HeaderOptions { browsers: vec![Browser::new("chrome")], ..HeaderOptions::default() };
    for (name, value) in opentele2_browser::generate_headers(Some("my-id"), &options)?.iter() {
        println!("{name}: {value}");
    }
    let screen = Some(Screen { max_width: Some(1920), ..Screen::default() });
    let options = FingerprintOptions { screen, ..FingerprintOptions::default() };
    let fingerprint = opentele2_browser::generate_fingerprint(Some("42"), &options)?;
    println!("{}", fingerprint.navigator.user_agent);
    Ok(())
}

License: Apache-2.0. See NOTICE for browserforge and the Apify data.