//! This module provides the functionality to generate random user agent string. use std::sync::OnceLock; use fake_useragent::{Browsers, UserAgents, UserAgentsBuilder}; static USER_AGENTS: OnceLock = OnceLock::new(); /// A function to generate random user agent to improve privacy of the user. /// /// # Returns /// /// A randomly generated user agent string. pub fn random_user_agent() -> &'static str { USER_AGENTS .get_or_init(|| { UserAgentsBuilder::new() .cache(false) .dir("/tmp") .thread(1) .set_browsers( Browsers::new() .set_chrome() .set_safari() .set_edge() .set_firefox() .set_mozilla(), ) .build() }) .random() }