Ir para o conteúdo

Python "Olá Bot Web"

Aviso

Este tutorial usa uma versão antiga do modelo de projeto oferecido pela BotCity.

Se você já usou este modelo antes e tem alguma dúvida, pode continuar usando este guia normalmente.

Se você está começando com as automações Python, recomendamos fortemente usar a nova versão do modelo de projeto.

Este tutorial o guiará pelo processo de criação de uma automação web Python simples.

Pré-requisitos

Baixando o WebDriver

Para poder trabalhar com automações web, precisamos usar o WebDriver correspondente ao navegador que está sendo utilizando na automação. Para isso, é necessário que o WebDriver do navegador escolhido esteja instalado e disponível preferencialmente em seu PATH. Se você não conseguir adicionar o WebDriver necessário ao seu PATH, poderá informar o driver path via código em seu bot.

Aqui está uma lista de navegadores suportados junto com os links para você baixar o WebDriver adequado:

Navegador WebDriver Download
Chrome ChromeDriver
Firefox GeckoDriver
Edge MSDriverEdge
IE IEDriverServer

Siga as instruções no site do WebDriver para instalação e configuração.

Uma vez instalado o WebDriver para o navegador a ser usado, podemos prosseguir para as próximas etapas.

Criando seu Primeiro Projeto

A BotCity oferece um modelo de projeto que pode ser personalizado por meio de uma ferramenta chamada cookiecutter.

Instalando o Cookiecutter

Para criarmos um projeto, precisamos primeiro instalar o pacote Python do cookiecutter, executando o seguinte comando em seu terminal de linha de comando:

python -m pip install --upgrade cookiecutter

Depois de fazer isso, você está pronto para criar sua primeira automação Web Python utilizando o framework da BotCity.

Utilizando o Modelo de Projeto

Com o cookiecutter devidamente instalado, é hora de fazer uso dele e criar um novo projeto.

Para criarmos um novo projeto usando o modelo de projeto, vamos invocar o cookiecutter e fornecer como argumento a URL do repositório onde os templates da BotCity estão localizados:

python -m cookiecutter https://github.com/botcity-dev/bot-python-template/archive/main.zip

O sistema irá solicitar algumas respostas para criar seu projeto.

  • Quando solicitado project_type escolha a opção 2 para Web e pressione enter;
  • Para bot_id digite HelloWebBot e pressione enter;
  • Em project_name, digite Hello WebBot e pressione enter;
  • Para project_short_description, digite Meu primeiro projeto utilizando BotCity e pressione enter.

Info

Mais informações sobre os tipos de projeto e opções existentes podem ser encontradas no site da documentação do modelo de projeto.

Após o término do processo acima, uma nova pasta chamada HelloWebBot estará disponível.

Sucesso

Parabéns, você agora tem um projeto com o framework Python da BotCity. 🏆

Vamos agora inspecionar os detalhes deste projeto.

Explorando o Projeto

Dentro da pasta do seu projeto HelloWebBot, você deverá ter a seguinte estrutura:

HelloWebBot
├── MANIFEST.in      <- Este arquivo define o conteúdo do pacote.
├── README.md        <- Arquivo README simples para seu projeto de bot.
├── VERSION          <- Este arquivo define a versão do pacote do Bot.
├── HelloBot         <- Módulo principal para o pacote do Bot.
│   ├── __init__.py
│   ├── __main__.py  <- Ponto de entrada para o módulo. Não há necessidade de se preocupar com este arquivo.
│   ├── bot.py       <- Aqui é onde iremos trabalhar e desenvolver nosso robô.
│   └── resources    <- Pasta contendo os arquivos auxiliares para o robô.
├── build.bat        <- Script em Batch para gerar o pacote.
├── build.sh         <- Shell script para gerar o pacote.
├── requirements.txt <- Arquivo descrevendo todas dependencias externas para seu robô.
└── setup.py         <- Arquivo de configuração para o pacote.

Nota

O template de projeto é composto por vários arquivos e pastas, porém aqui estão os mais importantes:

  • bot.py: Altere este arquivo e adicione aqui seu código.
  • resources: Adicione nesta pasta os arquivos a serem utilizados por seu robô como imagens, planilhas e etc.
  • VERSION: Altere o conteúdo deste arquivo ao atualizar a versão do seu bot. Recomenda-se usar versões no formato X.Y. Por exemplo. 1.0, 1.1, 2.5, 3.10.

Sucesso

Toda essa informação é bem legal mas é hora de vermos alguma ação.

Vamos testar nosso robô localmente. 🦾🤖

Configurando o Caminho do WebDriver

Conforme mencionado anteriormente, para poder utilizar os recursos do framework web é necessário configurar o caminho do WebDriver do navegador que estamos utilizando.

Se você não tiver o caminho do WebDriver adicionado ao seu PATH, poderá adicionar manualmente o caminho no código do bot, por meio da propriedade driver_path.

...
class Bot(WebBot):
    def action(self, execution=None):
        # Configurando para rodar no modo headless ou não
        self.headless = False

        # Setando navegador padrão para o Firefox
        self.browser = Browser.FIREFOX

        # Setando o caminho do WebDriver do Firefox
        self.driver_path = "<path to your WebDriver binary>"

        # Acessando o site da BotCity.
        self.browse("https://www.botcity.dev")
...

Info

O Chrome está configurado como o navegador padrão. Para alterar o navegador padrão, basta selecionar outra opção através da classe Browser.

Testando seu Projeto Localmente

Para testarmos nosso projeto localmente, vamos primeiro instalá-lo para termos todas as dependências do Python configuradas.

Utilizando a linha de comando, acesse a pasta HelloWebBot que descrevemos acima.

Instalando o Projeto

A partir desta pasta execute o comando abaixo para instalar seu projeto em modo de desenvolvimento:

pip install -e .

Dica

A instalação usando o sinalizador de modo de desenvolvimento -e permite que possamos continuar desenvolvendo e executando nosso Bot sem a necessidade de reinstalá-lo.

Este comando vai produzir uma saída grande referente a instalação de todas as dependências como, por exemplo, o botcity-framework-web e outras.

Depois que esse processo terminar, você deverá ver uma saída semelhante a esta:

<... other output from installation ...>
  Running setup.py develop for HelloWebBot
Successfully installed HelloWebBot-1.0 ...

A mensagem importante aqui é: Successfuly installed HelloWebBot-1.0.

Isso significa que seu projeto já está pronto para ser executado.

Executando o Robô

Nosso modelo de projeto roda um código de exemplo bem simples. Este projeto apenas abre o navegador que foi configurado e carrega a página da BotCity.

Você pode executar seu HelloWebBot com o seguinte comando:

python -m HelloWebBot

Aqui está uma captura de tela do resultado esperado: Python Web Result

🌟 Excelente 🌟

Agora você está pronto para começar a criar automações utilizando o Framework Web Python da BotCity.

Conclusão

Neste tutorial você aprendeu:

  • As dependências necessárias para desenvolver automações usando o framework Web Python da BotCity e como instalá-las.

  • Como criar novos projetos de WebBot usando o cookiecutter e o modelo de projeto da BotCity.

  • Como instalar e executar seu novo projeto localmente.

Divirta-se automatizando 🤖

Próximos Passos

Agora é hora de carregar seu projeto com o BotCity Studio e começar a criar suas automações com Visão Computacional e toda a produtividade que nossa ferramenta oferece.