Spaces:
Runtime error
Runtime error
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- Dockerfile +4 -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
|
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,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 |
-
|
22 |
-
|
23 |
-
|
|
|
|
|
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,
|
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 |
|