Aprenda na prática como criar um fluxo de automação inteligente combinando técnicas de RPA (Robotic Process Automation) com workflows de IA no N8N.
Neste desafio, você vai construir um assistente de investimentos automatizado. O fluxo começa com a extração de dados de clientes em uma página web usando Python, passa pela orquestração de um workflow no N8N e termina com a geração de mensagens personalizadas para cada perfil de investidor.
O projeto foi pensado para ser simples e acessível, mesmo para quem está dando os primeiros passos em Python e automação. A ideia é que você entenda o conceito de RPA de forma leve e aplique tudo em um cenário realista do mercado financeiro.
Desenvolver um pipeline de automação que:
- Coleta dados de clientes de uma página web simulada usando Python
- Processa as informações através de um workflow no N8N
- Cruza perfis de investidor com uma base de opções de investimento
- Gera mensagens personalizadas para cada cliente
Ao final, você terá um sistema funcional que demonstra como empresas do setor financeiro podem automatizar a comunicação com clientes de forma inteligente.
flowchart LR
%% Pipeline RPA + N8N + IA (máx. 7 caixinhas)
subgraph GH["GitHub Pages"]
A["Clientes<br>(docs/index.html)"]
E["Investimentos (docs/data.csv)"]
end
subgraph PY["RPA (Python)"]
B["Extrair Clientes"]
end
subgraph N8["N8N (Workflow)"]
C["Webhook<br>(Entrada)"]
D["Cruzar Dados<br>(Clientes x Investimentos)"]
M["Gerar Mensagem<br>(Template/LLM)"]
C --> D --> M
end
subgraph OUT["Saída"]
O["Mensagens Personalizadas"]
end
A <-->|HTTP| B --> C
E <-->|HTTP| D
M --> O
%% Estilos
classDef source fill:#E3F2FD,stroke:#1E88E5,stroke-width:1px,color:#0D47A1;
classDef rpa fill:#E8F5E9,stroke:#43A047,stroke-width:1px,color:#1B5E20;
classDef n8n fill:#FFF3E0,stroke:#FB8C00,stroke-width:1px,color:#E65100;
classDef out fill:#FCE4EC,stroke:#D81B60,stroke-width:1px,color:#880E4F;
class A,E source;
class B rpa;
class C,D,M n8n;
class O out;
O projeto utiliza ferramentas gratuitas e acessíveis, organizadas conforme cada etapa do fluxo:
| Etapa | Ferramenta | Função |
|---|---|---|
| Hospedagem | GitHub Pages | Servir a página de clientes e o CSV de investimentos |
| Extração (RPA) | Python + BeautifulSoup | Coletar dados dos clientes via web scraping |
| Orquestração | N8N | Processar dados, cruzar perfis e gerar mensagens |
| Geração com IA | Agente de IA no N8N | Criar mensagens personalizadas com LLM (desafio extra) |
Além dessas, você pode usar IAs generativas como Gemini, Claude ou ChatGPT como copilotos para auxiliar na escrita de código e tirar dúvidas ao longo do desenvolvimento.
Antes de começar, explore o repositório base que já contém a estrutura inicial:
- Página de Clientes (
docs/index.html): Uma página HTML hospedada no GitHub Pages com uma lista de clientes fictícios contendo nome, email, saldo e perfil de investidor (Conservador, Moderado ou Arrojado). Disponível online neste link. - Dados de Investimentos (
docs/data.csv): Um arquivo CSV também hospedado no GitHub Pages com opções de investimento organizadas por perfil. Disponível online neste link. - Script de RPA (
src/extrair_clientes.ipynb): Um notebook Python que acessa a página de clientes e extrai os dados da tabela usando BeautifulSoup.
🤖 Por que o script é considerado RPA? Ele faz exatamente o que um humano faria manualmente: abre uma página, lê os dados de uma tabela e os envia para outro sistema. A diferença é que o "robô" (código) executa isso automaticamente. Essa abordagem é útil quando não existe uma API disponível ou quando precisamos integrar sistemas legados.
- Faça um fork do repositório base para sua conta do GitHub
- Crie uma conta no N8N Cloud ou instale localmente
- Abra o notebook
src/extrair_clientes.ipynbno Google Colab e execute para entender o fluxo de extração
💡 Atenção: O script já extrai os dados, mas o envio ao N8N está comentado (
TODO). Você vai configurar a URL do Webhook após criá-lo na próxima etapa.
Este é o coração do desafio! Monte um fluxo que:
- Receba os dados dos clientes via Webhook (copie a URL gerada e configure no script Python)
- Leia o arquivo
docs/data.csvcom as opções de investimento - Cruze o perfil de cada cliente com a opção adequada
- Gere uma mensagem de recomendação para cada cliente
Para a versão mínima, use templates de mensagem fixos baseados no perfil:
- Conservador: Foco em renda fixa e segurança
- Moderado: Mix equilibrado entre renda fixa e variável
- Arrojado: Ênfase em ações e maior potencial de retorno
Conecte o Agente de IA do N8N a um modelo como Gemini ou GPT para:
- Analisar o contexto do cliente (saldo, perfil)
- Gerar mensagens únicas e personalizadas
- Criar recomendações mais inteligentes e humanizadas
- Repositório forkado com o workflow N8N implementado
- Workflow N8N exportado (
n8n/workflow.json) com mensagens estáticas - Script de RPA integrado ao Webhook do N8N
- Print ou vídeo demonstrando o fluxo funcionando de ponta a ponta
- Todos os itens do MVP
- Integração com Agente de IA no N8N
- Mensagens geradas dinamicamente via LLM
- Documentação explicando as decisões técnicas
📁 dio-lab-assistente-investimentos-rpa-n8n/
├── 📄 README.md
├── 📁 src/
│ └── 📄 extrair_clientes.ipynb # ✅ Notebook Python (já implementado, falta só o TODO)
├── 📁 n8n/
│ └── 📄 workflow.json # 🎯 Seu desafio: exportar o workflow aqui
└── 📁 docs/
├── 📄 index.html # ✅ Página de clientes (já implementado)
└── 📄 data.csv # ✅ Opções de investimento (já implementado)
| Tarefa | Sugestão de Prompt |
|---|---|
| Gerar dados fictícios | "Crie 10 clientes fictícios com nome, email, saldo e perfil de investidor em JSON" |
| Entender código | "Explique o que faz a biblioteca BeautifulSoup em Python" |
| Debugar erros | "Meu script Python está dando erro X, o que pode ser?" |
| Montar workflow | "Como configuro um webhook no N8N para receber dados JSON?" |
Bons estudos e mãos à obra 🚀
Se tiver dúvidas, lembre-se: a melhor forma de aprender é experimentando. Erre, corrija e celebre cada pequena vitória no caminho.