Formulário de contato

Nome

E-mail *

Mensagem *

Imagem

Como usar o Selenium com múltiplas portas no ChromeDriver

Como usar o Selenium com múltiplas portas no ChromeDriver

Publicado por em

Como usar o Selenium com múltiplas portas no ChromeDriver

Ao trabalhar com automação em Python utilizando o Selenium, pode surgir a necessidade de executar múltiplas instâncias simultâneas do ChromeDriver. Para isso, é essencial configurar portas distintas para evitar conflitos entre os scripts.

Este guia apresenta um exemplo prático de como definir portas diferentes para cada script utilizando o Selenium com o ChromeDriver.

Exemplo prático: executando múltiplos scripts com portas distintas

A seguir, veja como configurar dois scripts com portas separadas:

Script 1 - utilizando a porta 9515

from selenium import webdriver

# Inicializa o ChromeDriver com a porta 9515
chrome_options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=chrome_options, port=9515)

# Aqui você pode executar o seu script utilizando o driver

# Encerra o ChromeDriver
driver.quit()

Script 2 - utilizando a porta 9516

from selenium import webdriver

# Inicializa uma nova instância do ChromeDriver com a porta 9516
chrome_options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=chrome_options, port=9516)

# Aqui você pode executar o seu script utilizando o driver

# Encerra o ChromeDriver
driver.quit()

Usar portas distintas para cada instância do ChromeDriver evita falhas e conflitos entre os processos de automação.

Quais portas utilizar?

As portas comumente utilizadas com o ChromeDriver incluem:

  • 80
  • 8080
  • 8000
  • 9515
  • 9516

Essas portas geralmente são aceitas pela maioria dos sistemas operacionais e não conflitam com outros serviços, mas é importante verificar quais estão disponíveis em seu sistema.

Como verificar portas disponíveis no Linux

Você pode verificar quais portas estão em uso com o seguinte comando no terminal:

sudo lsof -i -P -n | grep LISTEN

Esse comando mostra todas as conexões de rede em execução e as respectivas portas.

Ambientes corporativos e redes restritas

Se estiver operando em um ambiente com políticas de rede restritivas, algumas portas podem estar bloqueadas. Nesses casos, recomenda-se consultar o administrador de rede para saber quais portas estão liberadas.

Dicas para gerenciar múltiplas instâncias do ChromeDriver

Se você precisa executar dezenas de scripts simultaneamente, é fundamental organizar bem a alocação de portas. Veja algumas estratégias:

  • Escolha um intervalo de portas: Dedique um intervalo como 9515 a 9535 exclusivamente para o ChromeDriver.
  • Use um gerenciador de portas: Ferramentas como TCPView (Windows) ou Port Manager ajudam a visualizar e controlar as portas em uso.
  • Implemente um script localizador de portas: Automatize a escolha da próxima porta livre para cada nova instância.

Exemplo de script que encontra uma porta livre

import socket

def encontrar_porta_livre(inicio=9515, fim=9535):
    for porta in range(inicio, fim):
        with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
            if s.connect_ex(('localhost', porta)) != 0:
                return porta
    return None

porta_disponivel = encontrar_porta_livre()
print(f"Porta disponível encontrada: {porta_disponivel}")

Conclusão

Executar várias instâncias do ChromeDriver com o Selenium requer uma boa gestão de portas. Seja utilizando faixas pré-definidas, ferramentas externas ou scripts inteligentes, o importante é garantir que cada instância opere em uma porta exclusiva para evitar conflitos.

Importante: Este conteúdo tem fins educacionais. Sempre analise tecnicamente e verifique as configurações do seu ambiente antes de executar scripts automatizados.

Recomendações adicionais

  • Use ambientes virtuais (como venv) para isolar suas dependências Python.
  • Prefira versões atualizadas do Selenium e ChromeDriver para melhor compatibilidade.
  • Considere o uso de ferramentas como Docker para isolar ambientes de execução.

Imagem de referência:

@CanalQb

Confira também o conteúdo completo em vídeo no canal oficial:

www.youtube.com/@canalqb

Marcadores: Blogger IA Python Script Sistemas Tutorial

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

Comentários