Formulário de contato

Nome

E-mail *

Mensagem *

Imagem

Principais argumentos do Selenium WebDriver para Chrome em Python

Principais argumentos do Selenium WebDriver para Chrome em Python

Publicado por em

@CanalQb

Argumentos comuns para Selenium WebDriver no Chrome

@CanalQb

Configurando argumentos para o ChromeOptions no Selenium

O Selenium WebDriver é amplamente usado para automatizar navegadores, e para isso, configurar corretamente os arguments do ChromeOptions é fundamental para melhorar a estabilidade, desempenho e adequação do navegador ao ambiente automatizado.

Veja abaixo uma lista detalhada de argumentos importantes para o ChromeDriver em Python, explicando suas funções e quando utilizá-los.

Lista de argumentos e suas funcionalidades

  • --disable-gpu: Desativa a aceleração de GPU, útil para ambientes sem suporte gráfico adequado, como servidores.
  • --disable-gpu-vsync: Desativa a sincronização vertical da GPU para melhorar a performance em alguns casos.
  • --disable-infobars: Remove as barras de informação que o Chrome exibe, deixando a interface mais limpa.
  • --ignore-certificate-errors: Ignora erros de certificado SSL, importante para acessar sites com certificados inválidos durante testes.
  • --allow-running-insecure-content: Permite que conteúdos inseguros sejam carregados em páginas HTTPS, útil em ambientes de teste.
  • --ignore-ssl-errors: Similar ao anterior, ignora erros SSL para evitar bloqueios no navegador.
  • --disable-web-security: Desativa a política de segurança do navegador, importante para testes que envolvem cross-origin requests.
  • disable-blink-features: Desativa certas funcionalidades do motor Blink, podendo melhorar compatibilidade.
  • --test-type: Configura o navegador para rodar em modo de teste, evitando alguns pop-ups e mensagens.
  • excludeSwitches=['enable-logging']: Remove logs excessivos do ChromeDriver para reduzir o ruído no console.
  • --autoplay-policy=no-user-gesture-required: Permite autoplay de mídia sem interação do usuário.
  • --no-sandbox: Desativa o sandbox do Chrome, necessário em alguns ambientes Linux restritos.
  • --disable-extensions: Desativa extensões do navegador para evitar interferência em testes.
  • --disable-dev-shm-usage: Usa diretórios temporários alternativos para evitar problemas com /dev/shm em Docker e Linux.
  • --disable-browser-side-navigation: Desativa navegação paralela para maior estabilidade.
  • --silent: Reduz a verbosidade do navegador.
  • --proxy-bypass-list=127.0.0.1,localhost: Ignora proxy para endereços locais.
  • --log-level=0: Define nível máximo de log para ChromeDriver.
  • --mute-audio: Silencia o áudio do navegador.
  • --headless: Executa o navegador sem interface gráfica, ideal para servidores e automação em background.
  • --lang=pt-BR: Define o idioma do navegador para Português do Brasil.
  • --disable-pinch: Desativa o gesto de pinça para zoom, evitando interferências em testes.

Exemplo prático em Python

from selenium import webdriver

options = webdriver.ChromeOptions()

options.add_argument('--disable-gpu')
options.add_argument('--disable-gpu-vsync')
options.add_argument('--disable-infobars')
options.add_argument('--ignore-certificate-errors')
options.add_argument('--allow-running-insecure-content')
options.add_argument('--ignore-ssl-errors')
options.add_argument('--disable-web-security')
options.add_argument('disable-blink-features')
options.add_argument('--test-type')
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_argument('--autoplay-policy=no-user-gesture-required')
options.add_argument('--no-sandbox')
options.add_argument('--disable-extensions')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--disable-browser-side-navigation')
options.add_argument('--silent')
options.add_argument('--proxy-bypass-list=127.0.0.1,localhost')
options.add_argument('--log-level=0')
options.add_argument('--mute-audio')
options.add_argument('--headless')
options.add_argument('--lang=pt-BR')
options.add_argument('--disable-pinch')

browser = webdriver.Chrome(options=options)
browser.set_page_load_timeout(30)

Dicas para otimização e estabilidade

  • Use o modo headless para executar testes em servidores ou CI/CD, evitando abrir janelas visuais.
  • Configure timeout de carregamento para evitar travamentos em páginas lentas ou instáveis.
  • Evite extensões e recursos desnecessários para garantir que seus testes não sejam afetados por interferências externas.
  • Valide sempre os argumentos e atualize-os conforme as versões do Chrome e ChromeDriver evoluem.

Referências oficiais

Para mais informações, consulte a documentação oficial do Selenium e do ChromeDriver:

Este conteúdo é informativo e deve ser usado com responsabilidade. Teste os parâmetros em ambientes controlados antes de aplicá-los em produção.

Marcadores: Blogger IA Jogos Python Script Sistemas Tutorial

© fevereiro 20, 2023 CanalQb — Python, Scripts, Automação, Airdrops e Criptomoedas | Web3 e Tech na Prática

Comentários