From acc120ec74f6bb5b1c1d9748b93c5af880781d21 Mon Sep 17 00:00:00 2001 From: "daniel.rodrigues" Date: Tue, 4 Nov 2025 10:09:18 -0300 Subject: [PATCH] att --- extracao_vendashora_rgb.py | 39 +++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/extracao_vendashora_rgb.py b/extracao_vendashora_rgb.py index 3d0c17f..6926139 100644 --- a/extracao_vendashora_rgb.py +++ b/extracao_vendashora_rgb.py @@ -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