Formulário de contato

Nome

E-mail *

Mensagem *

Imagem

Como Rodar Duas Instâncias do Google Chrome com Selenium e Python

Como Rodar Duas Instâncias do Google Chrome com Selenium e Python

Publicado por em

@CanalQb

Executando Duas Instâncias do Google Chrome com Selenium e Python

@CanalQb

É possível iniciar várias instâncias do navegador Chromium (Google Chrome) com perfis diferentes para garantir que cada sessão seja independente. Isso é especialmente útil para automação com Selenium, testes paralelos ou aplicações que necessitam de múltiplas sessões isoladas.

Utilizando a opção --user-data-dir para múltiplas sessões

Ao iniciar o Chromium com o parâmetro --user-data-dir, você define um diretório exclusivo para armazenar os dados da sessão (cookies, histórico, cache, etc). Isso evita conflitos entre diferentes instâncias do navegador.

Por exemplo, para iniciar duas instâncias independentes, você pode usar os seguintes comandos no terminal:

  • $ /usr/lib/chromium-browser/chromium-browser --user-data-dir=/tmp/chromium-browser1
  • $ /usr/lib/chromium-browser/chromium-browser --user-data-dir=/tmp/chromium-browser2

Cada uma dessas instâncias terá configurações e histórico próprios, garantindo isolamento entre as sessões.

Automatizando com Python e o módulo subprocess

Para iniciar essas instâncias de forma programada em Python, utilize o módulo subprocess. Ele permite abrir processos externos, como o Chromium, e controlá-los durante a execução do script.

Exemplo de script para abrir duas instâncias

import subprocess

# Iniciar a primeira instância do Chromium
chromium1 = subprocess.Popen([
    "/usr/lib/chromium-browser/chromium-browser",
    "--user-data-dir=/tmp/chromium-browser1"
])

# Iniciar a segunda instância do Chromium
chromium2 = subprocess.Popen([
    "/usr/lib/chromium-browser/chromium-browser",
    "--user-data-dir=/tmp/chromium-browser2"
])

# Aqui você pode inserir outras operações no seu script

# Para finalizar as instâncias, utilize o método kill()
chromium1.kill()
chromium2.kill()

O método Popen recebe uma lista com o caminho do executável e seus parâmetros. Ao chamar kill() você encerra o processo iniciado pelo Python.

Dicas importantes para automação com Selenium e Chrome

  • Confirme o caminho do executável Chromium no seu sistema, que pode variar. Use which chromium-browser no Linux.
  • Para utilizar o Selenium controlando essas instâncias, configure o ChromeOptions para usar o mesmo user-data-dir.
  • Certifique-se de ter o ChromeDriver instalado e compatível com sua versão do Chromium.
  • Evite executar múltiplas instâncias com o mesmo diretório de usuário para prevenir corrupção dos perfis.

Considerações finais

Executar múltiplas instâncias independentes do Chrome é uma estratégia eficaz para testes, scraping ou automação que precisa de sessões isoladas. Com o Python e o módulo subprocess, você pode iniciar e controlar esses processos facilmente.

Para ampliar seus conhecimentos, acompanhe tutoriais avançados no canal @CanalQb, que traz diversos conteúdos sobre automação e programação.

Marcadores: Blogger IA Python Script Sistemas Tutorial

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

Comentários

More from our Blog