Skip to content

💬 WhatsApp automation bot with Jupyter Notebook integration | Python ‱ Automation

Notifications You must be signed in to change notification settings

DrNOFX97/WhatsApp_Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

đŸ€– WhatsApp Sarcastic Bot

Um bot sarcĂĄstico e cĂ­nico que lĂȘ mensagens WhatsApp e responde com comentĂĄrios noir e inteligentes.

📋 Estrutura do Projeto

whatsapp-sarcastic-bot/
├── Whatsapp_bot.ipynb          # Notebook principal com todo o código
├── bot_whatsapp.py             # Versão standalone (script)
├── .env                        # ConfiguraçÔes (API keys)
├── .env.example                # Template de configuraçÔes
├── requirements.txt            # DependĂȘncias Python
├── README.md                   # Este arquivo
├── logs/
│   └── bot_whatsapp.log       # Log de atividades
└── data/
    ├── conversas.json         # Histórico de conversas
    └── respostas.json         # Respostas geradas

🚀 Quick Start

1. Clonar/Baixar o Projeto

cd whatsapp-sarcastic-bot

2. Configurar Ambiente

# Criar venv
python3 -m venv venv
source venv/bin/activate  # macOS/Linux
# ou: venv\Scripts\activate  # Windows

# Instalar dependĂȘncias
pip install -r requirements.txt

3. Configurar .env

# Copiar template
cp .env.example .env

# Editar com suas chaves API
nano .env

4. Executar

# Opção A: Notebook (interativo)
jupyter notebook Whatsapp_bot.ipynb

# Opção B: Script (produção)
python bot_whatsapp.py

🔑 Variáveis de Ambiente

# Google Gemini API
VITE_GEMINI_API_KEY="sua_chave_gemini"

# Anthropic Claude API
ANTHROPIC_API_KEY="sua_chave_anthropic"

# OpenAI API
OPENAI_API_KEY="sua_chave_openai"

# WhatsApp Configuration
WHATSAPP_MODE="pywhatkit"  # ou "twilio"
WHATSAPP_GROUP_NAME="Seu Grupo"
BOT_AUTO_REPLY=true
BOT_SARCASM_LEVEL="dark"

📚 Features

Core Functionality

  • ✅ Detecção automĂĄtica de gatilhos (@mentions, keywords, emojis)
  • ✅ Respostas sarcĂĄsticas em portuguĂȘs
  • ✅ Suporte para 3 modelos IA (Claude, Gemini, GPT-4)
  • ✅ Monitoramento em tempo real do WhatsApp
  • ✅ Fila de mensagens com threading
  • ✅ Logging completo de atividades
  • ✅ EstatĂ­sticas em tempo real
  • ✅ HistĂłrico de conversas

Gatilhos (Triggers)

O bot responde automaticamente quando:

  • Menção direta: @bot, @sarcasmo
  • Palavras-chave: amor, trabalho, pior, melhor, incrĂ­vel, odio, amo
  • Emojis: 😍 đŸ„° 😘 💕 ❀ 😭 😱

Categorias de Resposta

  • 💔 Amor/Relacionamento - Sarcasmo sobre romance
  • đŸ’Œ Trabalho - CrĂ­tica cĂ­nica sobre vida profissional
  • 📈/📉 ComparaçÔes - Pessimismo sobre melhor/pior
  • 🌍 Geral - ObservaçÔes absurdas sobre existĂȘncia

🔧 Configuração Avançada

Usar Claude (Anthropic)

bot = BotSarcasticoWhatsApp(
    bot_sarcasmo=bot_sa,
    modelo_ia='Claude'
)

Usar Gemini (Google)

bot = BotSarcasticoWhatsApp(
    bot_sarcasmo=bot_sa,
    modelo_ia='Gemini'
)

Usar GPT-4 (OpenAI)

bot = BotSarcasticoWhatsApp(
    bot_sarcasmo=bot_sa,
    modelo_ia='GPT-4'
)

📊 Monitorar Atividade

# Iniciar bot
bot.iniciar_monitoramento()

# Ver estatĂ­sticas
stats = bot.obter_estatisticas()
print(stats)

# Ver relatĂłrio
bot.gerar_relatorio()

# Ver log
bot.ler_log(ultimas_linhas=30)

# Parar bot
bot.parar_monitoramento()

đŸ› ïž Troubleshooting

.env nĂŁo encontrado

# Certificar-se de executar a célula de Setup primeiro
# A célula 2 (Setup) carrega o .env automaticamente

WhatsApp Web nĂŁo conecta

1. Abra https://web.whatsapp.com no navegador
2. Faça login com QR code
3. Mantenha aberto durante execução do bot

DependĂȘncias faltando

pip install --upgrade -r requirements.txt

Chaves API invĂĄlidas

# Verificar .env
cat .env

# Atualizar chaves
nano .env

📝 Logs

Todos os eventos sĂŁo registrados em logs/bot_whatsapp.log:

[2024-11-08 18:23:45] đŸ€– Bot SarcĂĄstico WhatsApp Inicializado
[2024-11-08 18:23:46] 🔗 Iniciando conexão com WhatsApp Web...
[2024-11-08 18:23:47] ✅ Conectado ao WhatsApp com sucesso!
[2024-11-08 18:23:50] 📹 [João]: Que dia lindo!...
[2024-11-08 18:23:51] đŸ“€ Resposta para [JoĂŁo]: Ah, a existĂȘncia humana em toda a sua glĂłria.

🔐 Segurança

  • ✅ .env nĂŁo Ă© commitado ao git
  • ✅ Chaves mascaradas nos logs
  • ✅ Sem armazenamento de mensagens brutas
  • ✅ Validação de entrada de usuĂĄrio
  • ✅ Sem execução de cĂłdigo arbitrĂĄrio

📩 DependĂȘncias Principais

  • pywhatkit - WhatsApp Web automation
  • anthropic - Claude API
  • google-genai - Gemini API
  • openai - GPT API
  • python-dotenv - Environment variables
  • Pillow - Image processing

🚀 Deployment

Local (Desenvolvimento)

python bot_whatsapp.py

Produção (Heroku/VPS)

# Ver guia de deployment na wiki
# Requires: Python 3.8+, 512MB RAM, conexĂŁo internet

Docker

docker build -t whatsapp-bot .
docker run -e OPENAI_API_KEY=$OPENAI_API_KEY whatsapp-bot

📞 Suporte

  • Issues: Abrir uma issue no GitHub
  • Docs: Ver Whatsapp_bot.ipynb para exemplos
  • Community: DiscussĂ”es no Discord

📄 Licença

MIT License - Livre para usar e modificar

🎉 ContribuiçÔes

ContribuiçÔes são bem-vindas! Faça um fork, crie uma branch e envie um PR.


Desenvolvido com ❀ e muito sarcasmo

About

💬 WhatsApp automation bot with Jupyter Notebook integration | Python ‱ Automation

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published