From d45f13f03073a7f5d629e24e66f988425a44511d Mon Sep 17 00:00:00 2001 From: husky Date: Thu, 13 Mar 2025 19:23:59 -0700 Subject: [PATCH] add proxy support to vorebot --- vorebot/src/main.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/vorebot/src/main.rs b/vorebot/src/main.rs index d6e94a0..d9ccfce 100644 --- a/vorebot/src/main.rs +++ b/vorebot/src/main.rs @@ -41,6 +41,9 @@ pub static NATS_CERT: Lazy = Lazy::new(|| std::env::var("NATS_CERT").exp pub static NATS_KEY: Lazy = Lazy::new(|| std::env::var("NATS_KEY").expect("NO NATS_KEY DEFINED")); pub static BROWSER_THREADS: Lazy> = Lazy::new(|| std::env::var("BROWSER_THREADS").expect("PLEASE LIST BROWSER_THREADS").split(',').map(|v| v.to_string()).collect()); +pub static BROWSER_PROXY: Lazy> = Lazy::new(|| { + std::env::var("BROWSER_PROXY").ok() +}); pub static DB_NAME: Lazy = Lazy::new(|| std::env::var("DB_NAME").expect("PLEASE ADD DB_NAME")); @@ -154,6 +157,18 @@ async fn main() { prefs.set_user_agent(USER_AGENT.to_string()).unwrap(); let mut caps = DesiredCapabilities::firefox(); caps.set_preferences(prefs).unwrap(); + if let Some(proxy) = BROWSER_PROXY.as_ref() { + caps.set_proxy(Proxy::Manual { + ftp_proxy: None, + http_proxy: Some(proxy.to_string()), + ssl_proxy: None, + socks_proxy: None, + socks_version: None, + socks_username: None, + socks_password: None, + no_proxy: None, + }).unwrap(); + } let driver = WebDriver::new(&browser, caps).await.unwrap(); info!("crawler ready");