0
0
mirror of https://github.com/neon-mmd/websurfx.git synced 2024-12-22 20:38:22 -05:00

fix: reduce the time to build user-agents

This commit is contained in:
neon_arch 2023-05-22 13:07:37 +03:00
parent 5f052dbee8
commit 6e19246cb2
3 changed files with 13 additions and 9 deletions

1
Cargo.lock generated
View File

@ -3328,6 +3328,7 @@ dependencies = [
"handlebars",
"log",
"md5",
"once_cell",
"rand 0.8.5",
"redis",
"reqwest 0.11.17",

View File

@ -21,3 +21,4 @@ rlua = {version="*"}
redis = {version="*"}
md5 = {version="*"}
rand={version="*"}
once_cell = {version="*"}

View File

@ -1,13 +1,8 @@
//! This module provides the functionality to generate random user agent string.
use fake_useragent::{Browsers, UserAgentsBuilder};
use fake_useragent::{Browsers, UserAgents, UserAgentsBuilder};
/// 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() -> String {
static USER_AGENTS: once_cell::sync::Lazy<UserAgents> = once_cell::sync::Lazy::new(|| {
UserAgentsBuilder::new()
.cache(false)
.dir("/tmp")
@ -21,6 +16,13 @@ pub fn random_user_agent() -> String {
.set_mozilla(),
)
.build()
.random()
.to_string()
});
/// 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() -> String {
USER_AGENTS.random().to_string()
}