Impostazione del proxy Selenium in Python e Java
Selenium può instradare un browser attraverso un proxy in un paio di righe — ma i proxy autenticati necessitano di un'estensione o di un helper in uscita, perché Chrome non accetterà USER:PASS nella riga di comando. Ecco il modello affidabile.
Il problema di autenticazione in Selenium
Setting an unauthenticated proxy in Selenium is trivial: add --proxy-server=http://host:3128 to Chrome options, or fill Selenium's Proxy object, and you are done. The moment the proxy needs a username and password, that simple path breaks — Chrome refuses credentials inline, and unlike Puppeteer or Playwright, Selenium has no built-in authenticate() hook to answer the 407 challenge.
La soluzione robusta e cross-language è una piccola estensione di Chrome generata a runtime che porta le tue credenziali e risponde alla richiesta di autenticazione del proxy tramite l'API webRequest. Funziona in modalità headless, non ha bisogno di servizi extra e si comporta allo stesso modo in Python e Java. Con s4m punti l'estensione a proxy.s4m.online:3128 (HTTP) e il tuo USER:PASS. Vedi la pagina del proxy e la guida all'autenticazione per ulteriori informazioni; per un'opzione senza autenticazione durante i test, la lista gratuita ha proxy aperti che puoi inserire direttamente nel flag della riga di comando.
Proxy autenticato tramite un'estensione generata
Questo helper Python scrive un'estensione Chrome usa e getta contenente le tue credenziali, quindi la carica. Sostituisci USER:PASS prima di eseguire.
import os, zipfile, tempfile
from selenium import webdriver
HOST, PORT, USER, PASS = "proxy.s4m.online", 3128, "USER", "PASS"
manifest = '{"version":"1.0.0","manifest_version":2,"name":"s4m-proxy",'\
'"permissions":["proxy","webRequest","webRequestBlocking","<all_urls>"],'\
'"background":{"scripts":["bg.js"]}}'
bg = ('var c={mode:"fixed_servers",rules:{singleProxy:'
'{scheme:"http",host:"%s",port:%d}}};'
'chrome.proxy.settings.set({value:c,scope:"regular"},function(){});'
'chrome.webRequest.onAuthRequired.addListener('
'function(d){return {authCredentials:{username:"%s",password:"%s"}};},'
'{urls:["<all_urls>"]},["blocking"]);') % (HOST, PORT, USER, PASS)
path = os.path.join(tempfile.mkdtemp(), "s4m_proxy.zip")
with zipfile.ZipFile(path, "w") as z:
z.writestr("manifest.json", manifest)
z.writestr("bg.js", bg)
opts = webdriver.ChromeOptions()
opts.add_extension(path)
driver = webdriver.Chrome(options=opts)
driver.get("https://api.ipify.org")
print("Exit IP:", driver.find_element("tag name", "body").text)
driver.quit()
# ----- Java (unauthenticated proxy) -----
// Proxy p = new Proxy();
// p.setHttpProxy("proxy.s4m.online:3128");
// ChromeOptions o = new ChromeOptions();
// o.setProxy(p);
// WebDriver driver = new ChromeDriver(o);Scegliere il proprio approccio
Scegli in base al fatto che il proxy necessiti di credenziali.
Nessuna autenticazione? Usa il flag
Per un proxy non autenticato, aggiungi semplicemente --proxy-server=http://host:3128 a ChromeOptions, o imposta l'oggetto Proxy di Selenium. Nient'altro necessario.
Auth? Genera un'estensione
Per i proxy USER:PASS, invia una piccola estensione runtime che risponde suAuthRequired. Funziona senza interfaccia e si comporta allo stesso modo tra i vari linguaggi.
Endpoint HTTP per browser
Usa proxy.s4m.online:3128 (HTTP). SOCKS5 autenticato all'interno di un browser è inaffidabile, quindi mantieni SOCKS5 per CLI e client di libreria.
Mantieni l'estensione privata
L'estensione generata incorpora le tue credenziali in un file temporaneo. Scrivilo in una directory temporanea privata e puliscilo dopo l'esecuzione.
Affidabilità e aspettative oneste
Selenium guida un vero browser, che è sia il suo punto di forza che il suo costo: è più pesante di un client HTTP puro, quindi mantieni le sessioni mirate e chiudi i driver prontamente. Se hai bisogno solo di HTML, un client HTTP dietro un proxy è molto più economico — vedi scraping con requests. Rivolgiti a Selenium quando è necessaria la resa JavaScript o una vera interazione dell'utente.
Come sempre, un proxy cambia il tuo IP, non la tua impronta digitale. I proxy s4m sono datacenter — ideali per test funzionali, monitoraggio e scraping moderato, ma rilevabili come datacenter su siti ostili. Quando un login o una lista di autorizzazione si aspetta un indirizzo stabile, aggiungi un IP personale dedicato. Per progetti più recenti, considera Playwright, la cui autenticazione proxy nativa evita completamente la danza delle estensioni. Verifica le uscite con gli strumenti e leggi la documentazione API per automatizzare la rotazione delle credenziali.
Domande, risposte
Perché non posso mettere USER:PASS nel flag proxy di Selenium?
Chrome ignora le credenziali nel flag --proxy-server e invece solleva un prompt di autenticazione nativa a cui un browser headless non può rispondere. La soluzione affidabile è una piccola estensione di Chrome in esecuzione che risponde a onAuthRequired con il tuo nome utente e password.
C'è un modo più semplice per i proxy non autenticati?
Sì. Senza credenziali puoi semplicemente aggiungere --proxy-server=http://host:3128 a ChromeOptions, o compilare l'oggetto Proxy di Selenium in Java. L'estensione è necessaria solo quando il proxy richiede USER:PASS.
Dovrei usare SOCKS5 o HTTP con Selenium?
Usa l'endpoint HTTP sulla porta 3128 per i browser. SOCKS5 autenticato in un browser è inaffidabile; mantieni SOCKS5 per client da riga di comando e librerie.
Sarebbe più facile Playwright?
Spesso, sì. Playwright accetta le credenziali proxy nativamente nel suo oggetto proxy, quindi salti completamente l'estensione. Selenium è ancora la scelta giusta quando il tuo progetto dipende già da esso.
Guida i browser attraverso un proxy
Proxy di data center autenticati su proxy.s4m.online, pronti per Selenium tramite un'estensione generata. Pagamento a consumo, con un'opzione IP dedicato per accessi stabili.
Le persone hanno trovato questa pagina cercando
- impostazione del proxy Selenium in Python e java
- che cos'è proxy per scraping
- come evitare i ban IP durante lo scraping
- proxy per scraping
- proxychains: come concatenare i proxy SOCKS5
- lista di proxy gratuiti confronto
- migliori protocolli VPN nel 2026
- indirizzo ip per scraping
- autenticazione proxy
- scarica autenticazione proxy
- fresco configurazione del proxy
- come controllare se un proxy è valido (con uno script pronto)
- configurazione del proxy
- funzionante lista di proxy gratuiti
- openvpn per windows
- indirizzo ip per android
- indirizzo ip
Frasi di ricerca reali a cui questa pagina risponde — i collegamenti aprono la pagina che le tratta in dettaglio.