lucianotonet commited on
Commit
0d18638
1 Parent(s): 952d701

chore: Update Dockerfile to use latest version of ChromeDriver and optimize Chrome options in app.py

Browse files
Files changed (2) hide show
  1. Dockerfile +4 -2
  2. app.py +6 -4
Dockerfile CHANGED
@@ -12,9 +12,9 @@ RUN apt-get update && apt-get install -y \
12
  google-chrome-stable
13
 
14
  # Instalar o ChromeDriver
15
- RUN wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/126.0.6478.63/chromedriver_linux64.zip \
16
  && unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/ \
17
- && rm /tmp/chromedriver.zip || true
18
 
19
  # Criar um usuário não root
20
  RUN useradd -m -u 1000 user
@@ -34,5 +34,7 @@ COPY --chown=user . /app
34
  # Definir o usuário para executar o container
35
  USER user
36
 
 
 
37
  # Comando para iniciar a aplicação
38
  CMD ["python", "app.py"]
 
12
  google-chrome-stable
13
 
14
  # Instalar o ChromeDriver
15
+ RUN wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE`/chromedriver_linux64.zip \
16
  && unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/ \
17
+ && rm /tmp/chromedriver.zip
18
 
19
  # Criar um usuário não root
20
  RUN useradd -m -u 1000 user
 
34
  # Definir o usuário para executar o container
35
  USER user
36
 
37
+ RUN google-chrome --version
38
+
39
  # Comando para iniciar a aplicação
40
  CMD ["python", "app.py"]
app.py CHANGED
@@ -18,9 +18,11 @@ chromedriver_path = ChromeDriverManager().install()
18
  print("ChromeDriver instalado com sucesso em " + chromedriver_path + "!",
19
  end="\n")
20
 
21
- # options = webdriver.ChromeOptions()
22
- # options.add_experimental_option('w3c', False) # Desativar o protocolo W3C para usar o DevTools Protocol
23
- driver = webdriver.Chrome()
 
 
24
 
25
  # Habilitar a captura de requisições de rede
26
  driver.execute_cdp_cmd('Network.enable', {})
@@ -28,7 +30,7 @@ driver.execute_cdp_cmd('Network.enable', {})
28
 
29
  # Função para encontrar um elemento usando o XPath
30
  def find(xpath):
31
- return WebDriverWait(driver, 10).until(
32
  EC.presence_of_element_located((By.XPATH, xpath)))
33
 
34
 
 
18
  print("ChromeDriver instalado com sucesso em " + chromedriver_path + "!",
19
  end="\n")
20
 
21
+ options = webdriver.ChromeOptions()
22
+ options.add_argument('--no-sandbox')
23
+ options.add_argument('--disable-dev-shm-usage')
24
+ options.add_argument('--disable-gpu')
25
+ driver = webdriver.Chrome(options=options)
26
 
27
  # Habilitar a captura de requisições de rede
28
  driver.execute_cdp_cmd('Network.enable', {})
 
30
 
31
  # Função para encontrar um elemento usando o XPath
32
  def find(xpath):
33
+ return WebDriverWait(driver, 20).until(
34
  EC.presence_of_element_located((By.XPATH, xpath)))
35
 
36