Como Usar Proxies com Selenium
O Chrome no Selenium não aceita um nome de usuário e senha no flag --proxy-server. A maneira mais simples é usar selenium-wire, que cuida do login para você.
Passos
- Instale selenium-wire com pip install selenium-wire
- Passe a URL do proxy com nome de usuário e senha em seleniumwire_options
- Inicie o driver e abra a página de destino
- Use um session id para manter um IP para todo o teste
Exemplo de código
from seleniumwire import webdriver
proxy = "http://USERNAME-cc-ca:PASSWORD@gw.gbproxies.cc:10000"
driver = webdriver.Chrome(seleniumwire_options={
"proxy": {"http": proxy, "https": proxy, "no_proxy": "localhost,127.0.0.1"}
})
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()Substitua USERNAME e PASSWORD pelo login do proxy da página Proxies do console. A porta 10000 é HTTP residencial; veja as portas de cada produto abaixo.
Dicas
- Desative imagens com preferências do Chrome para economizar GB
- Execute um driver por sessão fixa
Perguntas comuns
Posso usar o Selenium simples sem pacotes extras?
O Chrome precisa de uma extensão ou selenium-wire para logins de proxy; o Firefox pode ler credenciais de um perfil.