Como Criar um Ambiente Virtual para Automação com BotCity e Python (Passo a Passo)



No dia 11/09, iniciamos a disciplina BotCity + Python, que está sendo ministrada pelo Prof. Benevaldo Pereira Gonçalves. Esta matéria é essencial para aprendermos a desenvolver automações utilizando a plataforma BotCity junto com a linguagem Python. No post de hoje, vamos explorar detalhadamente como criar e configurar um ambiente virtual, que será fundamental para o desenvolvimento das nossas automações tanto durante essa disciplina quanto ao longo de todo o curso.

A criação de um ambiente virtual é uma prática recomendada para manter os pacotes e bibliotecas organizados e isolados por projeto. Isso nos ajuda a evitar conflitos entre versões de dependências e facilita o gerenciamento de diferentes projetos. 

Vamos aprender a configurar esse ambiente de maneira eficiente para garantir que nosso ambiente de desenvolvimento esteja sempre preparado e funcionando corretamente.


Passo 1: Instalação do Anaconda 


figura 1: logo oficial

O Anaconda é uma distribuição de Python que facilita o gerenciamento de pacotes e ambientes virtuais. A versão 3.12 ou superior garante compatibilidade com as bibliotecas mais recentes, além de incluir ferramentas para análise de dados e desenvolvimento científico. Esse passo envolve baixar e instalar o Anaconda a partir do site oficial e garantir que esteja atualizado.


Passo 2: Instalação do VSCode

figura 2: logo oficial 

O Visual Studio Code (VSCode) é um editor de código popular, ideal para desenvolvimento Python. Após instalá-lo, é necessário adicionar a extensão do Python, que oferece suporte ao IntelliSense, debugging, linting, e outras funcionalidades úteis para programar com Python.


Passo 3: Abrir a pasta onde irá criar seu ambiente virtual

Na pasta escolhida, abrir o Windows Powershell e executar o seguinte comando: 'python -m pip install --upgrade cookiecutter', como mostrado na imagem abaixo:

figura 3: comando cookiecutter

Esse comando instala o Cookiecutter, uma ferramenta para gerar projetos com base em templates predefinidos. Ele facilita a criação de projetos com estrutura consistente e automatiza o processo de configuração. A opção '--upgrade' garante que você esteja utilizando a versão mais recente do Cookiecutter.


Passo 4: Gerar um projeto no BotCity

Após a instalação do Cookiecutter, executar o seguinte comando: 'python -m cookiecutter https://github.com/botcity-dev/bot-python-template/archive/v2.zip', como mostrado na imagem abaixo: 

figura 4: comando para gerar projeto no BotCity

Aqui, está sendo utilizado o Cookiecutter para gerar um projeto baseado em um template específico do repositório BotCity. O template é baixado do GitHub e contém a estrutura inicial para criar um bot em Python, facilitando a criação de automações com BotCity. 

Após rodar o comando, o Cookiecutter pedirá para você escolher o tipo de template. Neste caso, você deve selecionar o template Web, que é adequado para automações envolvendo interações com aplicações web.

figura 5: escolhendo o template Web (opção 2)

Após a seleção do template Web, deve-se informar o 'bot_id', uma identificação única para o bot que está sendo criado. Essa etapa é importante para registrar o bot no sistema da BotCity e garantir que ele seja identificado corretamente.

figura 6: informando o nome escolhido do bot ("projeto_gates_bot")


Passo 5: Entrar na pasta do projeto criado

Após o Cookiecutter gerar o projeto, será criada uma pasta com todos os arquivos necessários. Você precisa entrar nesta pasta para acessar o projeto e começar a trabalhar, seja para ajustar o código, adicionar novas funcionalidades ou executar o bot.

figura 7: usando o comando 'CD' para entrar na pasta do projeto criado


Passo 6: Criar um novo ambiente virtual com Conda

Após entrar na pasta, executar o comando: 'conda create --name nome_projeto_robo python=3.10', onde o 'nome_projeto_robo' é o nome do seu projeto. Esse comando cria um novo ambiente virtual com Conda, utilizando a versão do Python 3.10.  

Ambientes virtuais são úteis para isolar dependências de diferentes projetos, garantindo que bibliotecas e versões de pacotes não entrem em conflito.

figura 8: criando um novo ambiente virtual

DICA: Não é obrigatório, mas você pode nomear o ambiente virtual como o mesmo nome do 'bot_id' do seu projeto. Isso ajuda a manter tudo organizado e facilita a identificação do ambiente específico usado para cada bot ou projeto, garantindo consistência entre o ambiente e o bot que você está desenvolvendo.


Passo 7: Selecionar o ambiente virtual com Python 3.10

Após a criação do ambiente, é necessário configurar o VSCode para que ele utilize esse ambiente ao invés do Python global.

Dentro da pasta do projeto, abrir o VSCode: 'code .' Este comando abre o VSCode diretamente na pasta do projeto que você criou, pronto para editar e configurar o código. O '.' significa "diretório atual".

figura 9: comando 'code .' para abrir o VSCode diretamente na pasta atual

figura 10: VSCode aberta na pasta 'projeto_gates_bot'

Ao abrir o VSCode, pressionar as teclas 'Ctrl + Shift + P' ,essa combinação abre a paleta de comandos no VSCode. Essa paleta permite acessar diversas funcionalidades do editor, como escolher o interpretador Python, rodar tarefas, configurar o workspace, entre outras.

Na paleta de comandos, você deve buscar por 'Python: Select Interpreter', que é a opção para escolher qual versão do Python (e qual ambiente virtual) o VSCode utilizará para executar o código. Isso é importante, pois você quer garantir que o ambiente virtual correto seja selecionado para o projeto.

figura 11: paleta de comandos com a opção 'Python: Select Interpreter'

Ao selecionar o comando 'Python: Select Interpreter', deve-se selecionar o ambiente virtual correspondente ao projeto com a versão 3.10. Aqui você escolhe o ambiente virtual que foi criado no passo 6, que terá o nome correspondente ao seu 'bot_id' e a versão do Python 3.10. 

Isso garante que o VSCode utilize o ambiente certo para rodar o código do seu projeto, com todas as bibliotecas e dependências instaladas nele. No caso desse exemplo, o nome do projeto criado foi 'projeto_gates_bot'.

figura 12: ambientes virtuais disponíveis, caso do projeto em questão, vamos selecionar a última opção 'Python 3.10.14 ('projeto_gates_bot')'


Passo 8: Verificar a versão do Python

Após selecionar o ambiente virtual, deve-se abrir um novo terminal no VSCode e digitar o comando 'python --version', este comando verifica a versão do Python atualmente ativa no ambiente do VSCode. Ele vai retornar algo como "Python 3.10.x" se o ambiente foi configurado corretamente. 

Isso confirma que o VSCode está utilizando o ambiente virtual com a versão correta do Python.

figura 13: versão do python ativa no ambiente virtual (Python 3.10.14)


Passo 9: Instalar o arquivo 'requirements.txt'

No terminal do VSCode, digitar o comando 'pip install -r requirements.txt'. Esse comando instala todas as dependências listadas no arquivo 'requirements.txt'. 

O 'requirements.txt' contém uma lista de bibliotecas e suas versões necessárias para o projeto. Executar esse comando garante que todas as dependências do projeto sejam instaladas no ambiente virtual que você configurou.

figura 14: instalando novas dependências listadas no arquivo 'requirements.txt'


Passo 10: Instalar a biblioteca 'webdriver_manager'

No terminal do VSCode, digitar o comando 'pip install webdriver_manager'. Esse comando instala a biblioteca 'webdriver_manager', que é usada para gerenciar drivers automaticamente, como o ChromeDriver para automação de navegadores com Selenium. 

Isso evita a necessidade de baixar manualmente drivers de navegadores, pois o 'webdriver_manager' cuida dessa tarefa, garantindo que o driver correto seja utilizado para a versão do navegador instalada na sua máquina.

figura 15: instalando a biblioteca 'webdriver_manager'


Passo 11: Atualizar arquivo 'requirements.txt'

No terminal do VSCode, digitar o comando 'pip freeze > requirements.txt'. Esse comando atualiza o arquivo `requirements.txt` com todas as bibliotecas instaladas no ambiente virtual atual, junto com as versões exatas delas. 

O comando 'pip freeze' lista todas as bibliotecas instaladas, e a parte `> requirements.txt` redireciona essa lista para o arquivo `requirements.txt`. 

Isso é útil para garantir que todos os pacotes necessários para o projeto estejam documentados, facilitando a replicação do ambiente em outras máquinas ou por outros desenvolvedores.

figura 16: atualizando o arquivo `requirements.txt` com todas as bibliotecas instaladas no ambiente virtual atual


Atenção!!!

Observar na barra de Status do VSCode, quando o arquivo 'bot.py' estiver aberto, se o ambiente virtual aberto corresponde ao projeto atual.

Na parte inferior do VSCode, na barra de status, o ambiente virtual atualmente ativo é exibido. Quando você abrir o arquivo 'bot.py', verifique se o ambiente virtual correspondente ao projeto (que foi configurado anteriormente) está ativo. 

Isso garante que o código esteja utilizando o ambiente correto, com as dependências e a versão do Python configuradas corretamente para o projeto. Caso o ambiente exibido seja diferente, é possível trocá-lo na paleta de comandos (como explicado no passo 7).

figura 17: no canto inferior direito, pode-se ver qual ambiente virtual está ativo

A criação e configuração de um ambiente virtual é um passo essencial para garantir o sucesso no desenvolvimento de automações com BotCity e Python. 

Ao isolar dependências e organizar seu ambiente de trabalho, você terá mais controle e eficiência nos seus projetos. 

Agora que você já conhece o processo, é hora de colocar em prática e começar a criar suas próprias automações! Explore as ferramentas e veja como elas podem otimizar tarefas repetitivas no seu dia a dia. Teste suas habilidades e descubra o potencial das automações que você pode desenvolver!




Luan Pinheiro

Sou técnico em eletrônica formado pelo IFAM, bacharel em Engenharia de Software pela UFAM e pós-graduado em Desenvolvimento de Sistemas pela UNIBTA. Apaixonado por tecnologia e aprendizado contínuo, estou me aprofundando na área de automação, sempre buscando contribuir e evoluir profissionalmente.

Postar um comentário

Postagem Anterior Próxima Postagem