This commit is contained in:
daniel.rodrigues 2025-11-04 10:09:18 -03:00
parent 8ca6f2bfc3
commit acc120ec74

View File

@ -129,10 +129,28 @@ def choose_sql_driver() -> str:
def main():
# Configurar opções do Chrome
# Configurar opções do Chrome para ambiente Kubernetes/Docker
chrome_options = Options()
# Remova o comentário abaixo se quiser executar em modo headless (sem interface gráfica)
chrome_options.add_argument('--headless')
# Configurações essenciais para rodar em Docker/Kubernetes (sem interface gráfica)
chrome_options.add_argument('--headless') # Modo headless (sem interface gráfica)
chrome_options.add_argument('--no-sandbox') # Necessário para rodar como root
chrome_options.add_argument('--disable-dev-shm-usage') # Evita problemas de memória compartilhada
chrome_options.add_argument('--disable-gpu') # Desabilita GPU (não necessária em headless)
# Configurações adicionais recomendadas para Kubernetes
chrome_options.add_argument('--disable-software-rasterizer')
chrome_options.add_argument('--disable-extensions')
chrome_options.add_argument('--disable-setuid-sandbox')
chrome_options.add_argument('--remote-debugging-port=9222')
# Configurações de janela
chrome_options.add_argument('--window-size=1920,1080')
chrome_options.add_argument('--start-maximized')
# Desabilitar notificações e popups
chrome_options.add_argument('--disable-notifications')
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])
# Definir pasta de download para a Área de Trabalho
download_dir = os.path.join(os.path.expanduser("~"), "Desktop")
@ -140,13 +158,24 @@ def main():
"download.default_directory": download_dir,
"download.prompt_for_download": False,
"download.directory_upgrade": True,
"safebrowsing.enabled": True
"safebrowsing.enabled": True,
"profile.default_content_setting_values.notifications": 2 # Desabilitar notificações
}
chrome_options.add_experimental_option("prefs", prefs)
# Usar o binário do Chromium instalado no sistema (para Kubernetes/Docker)
# Comentar a linha abaixo se estiver rodando localmente no Windows
chrome_options.binary_location = '/usr/bin/chromium'
# Inicializar o driver do Chrome
print("Iniciando o navegador...")
driver = webdriver.Chrome(options=chrome_options)
# Criar o service apontando para o chromedriver do sistema (Kubernetes/Docker)
# Comentar a linha abaixo se estiver rodando localmente no Windows
service = Service('/usr/bin/chromedriver')
driver = webdriver.Chrome(service=service, options=chrome_options)
# Para rodar localmente no Windows, use:
# driver = webdriver.Chrome(options=chrome_options)
try:
# Acessar a URL