Spam Bot para WhatsApp con Python y PyAutoGUI

Spam Bot para WhatsApp con Python y PyAutoGUI

Aprende a crear un bot para enviar mensajes automaticos por WhatsApp usando Python, PyAutoGUI y Web WhatsApp. Incluye codigo completo y explicacion paso a paso.

Con este pequeño script llamado Spam Bot, podras enviar la cantidad de mensajes que desees a traves de WhatsApp sin necesidad de escribir mucho codigo. Utilizaremos el paquete pyautogui, un modulo de Python que permite automatizar tareas en multiples sistemas operativos.


Que es un Bot?#

Un bot es un software o programa informatico diseñado para realizar tareas repetitivas a traves de Internet como si fuera una persona real. Los bots estan programados con ciertas instrucciones y pueden llevar a cabo acciones con un nivel de inteligencia predefinido en cada guion u orden asignado. Ejemplos comunes de bots incluyen los chatbots de atencion al cliente, bots de redes sociales que publican automaticamente, y bots de web scraping que recogen datos de sitios web.

Nota: flores amarillas


Que es Python?#

En resumen, Python es un lenguaje de programacion multiparadigma, lo que significa que soporta diversos estilos de programacion, como la orientacion a objetos, la programacion imperativa y, en menor medida, la programacion funcional. Es un lenguaje interpretado, dinamico y multiplataforma, lo que permite su ejecucion en diversos sistemas operativos sin necesidad de compilacion previa.

Ahora que ya esta todo explicado, continuaremos con el paso mas importante: la instalacion de los programas necesarios y la creacion del codigo que dara vida a este script llamado SPAM BOT.


Advertencia importante#

Este script se proporciona con fines educativos y de demostracion. El uso de scripts para enviar mensajes masivos puede violar los terminos de servicio de WhatsApp y puede considerarse spam. Usalo de manera responsable y asegurate de obtener el consentimiento de las personas antes de enviarles mensajes automatizados.


Pasos para Configurar y Ejecutar el Spam Bot#

1. Descargar un Editor de Codigo#

Descarga un editor de codigo de tu preferencia. En este caso, usaremos el popular editor de codigo Visual Studio Code.

Descargar Visual Studio Code:

2. Crear un Nuevo Archivo y Configurar el Entorno#

Crear un Nuevo Archivo:

Instalar PyAutoGUI:

Terminal window
pip install pyautogui

3. Copiar el Codigo en el Editor#

Copia el siguiente codigo en el editor. Dejo dos ejemplos para que puedan hacer pruebas. Recuerden que despues de send?phone= va el numero al que se enviara el mensaje automatico.

Codigo 1 - Mensaje simple#

import pyautogui, webbrowser
from time import sleep
webbrowser.open("https://web.whatsapp.com/send?phone=+55123456789")
sleep(10)
pyautogui.typewrite("Hola esto es un mensaje automatico")
pyautogui.press("enter")

Codigo 2 - Mensajes desde archivo de texto#

import pyautogui, webbrowser
from time import sleep
webbrowser.open("https://web.whatsapp.com/send?phone=+55123456789")
sleep(10)
with open("spam.txt", "r") as file:
for line in file:
pyautogui.typewrite(line)
pyautogui.press("enter")

4. Crear un Archivo de Texto#

Crea un nuevo archivo con la extension .txt. El nombre del archivo puede ser cualquiera, ya que esto es opcional. En este ejemplo, lo llamaremos spam.txt.

5. Llenar el Archivo de Texto#

Llena el archivo .txt con el contenido que desees, como letras, numeros, oraciones, canciones, piropos, etc. Te recomiendo eliminar acentos o caracteres especiales, ya que estos podrian no enviarse correctamente. Finalmente, guarda el archivo utilizando Ctrl + S.

6. Ejecutar el Codigo#

Ahora solo queda ejecutar el codigo. Puedes hacerlo de las siguientes maneras:

Usar la Opcion de Play:

Usar el Menu Contextual:

Esto ejecutara el script y comenzara a enviar los mensajes automaticamente segun la configuracion que hayas especificado.


Codigo Mejorado#

A continuacion, te presento una version mejorada del script con mensajes programados y tiempos de espera personalizados:

import pyautogui
import webbrowser
from time import sleep
# Definir el numero de telefono
numero = "+55123456789" # Reemplaza con el numero de telefono al que quieres enviar los mensajes
# Definir los mensajes y sus intervalos de tiempo
# Los numeros son los segundos de espera entre cada mensaje
mensajes = [
{"texto": "holaa", "tiempo_espera": 1},
{"texto": "¿Como estas?", "tiempo_espera": 2},
{"texto": "Que bien! Espero que tengas una buena noche.", "tiempo_espera": 3},
{"texto": "Hasta mas tarde", "tiempo_espera": 4}
]
# Abrir WhatsApp Web y esperar a que se cargue
webbrowser.open(f"https://web.whatsapp.com/send?phone={numero}")
sleep(10) # Esperar a que se cargue WhatsApp Web
# Enviar los mensajes con sus respectivos intervalos de tiempo
for mensaje in mensajes:
pyautogui.typewrite(mensaje["texto"])
pyautogui.press("enter")
sleep(mensaje["tiempo_espera"]) # Esperar el tiempo definido antes de enviar el siguiente mensaje

Explicacion del codigo mejorado#

1. Importacion de librerias:

import pyautogui
import webbrowser
from time import sleep

2. Definicion del numero de telefono:

numero = "+55123456789"

3. Lista de mensajes programados:

mensajes = [
{"texto": "holaa", "tiempo_espera": 1},
{"texto": "¿Como estas?", "tiempo_espera": 2},
...
]

4. Apertura de WhatsApp Web:

webbrowser.open(f"https://web.whatsapp.com/send?phone={numero}")
sleep(10)

5. Bucle de envio de mensajes:

for mensaje in mensajes:
pyautogui.typewrite(mensaje["texto"])
pyautogui.press("enter")
sleep(mensaje["tiempo_espera"])

Explicacion de las funciones principales#

pyautogui.typewrite()#

Esta funcion escribe texto como si lo hiciera un usuario real. Es util para llenar formularios o enviar mensajes.

pyautogui.typewrite("Hola mundo")

pyautogui.press()#

Simula la presion de una tecla especifica. En este caso, usamos “enter” para enviar el mensaje en WhatsApp.

pyautogui.press("enter")

pyautogui.hotkey()#

Permite simular combinaciones de teclas como Ctrl + C o Ctrl + V.

pyautogui.hotkey("ctrl", "c")

webbrowser.open()#

Abre una URL en el navegador predeterminado.

webbrowser.open("https://web.whatsapp.com/send?phone=+55123456789")

Posibles problemas y soluciones#

El mensaje no se escribe correctamente#

Solucion: Asegurate de que la ventana de WhatsApp Web este activa y en primer plano. El script necesita que la ventana este enfocada para escribir.

Los caracteres especiales no se envian#

Solucion: Evita usar acentos, enes o caracteres especiales en el archivo de texto. Python puede tener problemas al escribirlos.

El script no encuentra el archivo de texto#

Solucion: Asegurate de que el archivo spam.txt este en el mismo directorio que el script de Python.

WhatsApp Web no carga#

Solucion: Aumenta el tiempo de espera en sleep() o espera manualmente a que cargue antes de ejecutar el script.

El bot no se conecta#

Solucion: Verifica que tengas conexion a Internet y que el numero de telefono sea correcto.


Recomendaciones de uso#

Uso etico y responsable#

Mejoras sugeridas#

Ejemplo con archivo de texto#

import pyautogui
import webbrowser
from time import sleep
# Definir el numero de telefono
numero = "+55123456789"
# Abrir WhatsApp Web
webbrowser.open(f"https://web.whatsapp.com/send?phone={numero}")
sleep(10)
# Leer mensajes desde un archivo
try:
with open("spam.txt", "r", encoding="utf-8") as file:
mensajes = file.readlines()
for mensaje in mensajes:
mensaje = mensaje.strip() # Eliminar espacios y saltos de linea
if mensaje: # Solo enviar si no esta vacio
pyautogui.typewrite(mensaje)
pyautogui.press("enter")
sleep(1) # Esperar 1 segundo entre mensajes
except FileNotFoundError:
print("Error: No se encontro el archivo spam.txt")
except Exception as e:
print(f"Error: {e}")

Conclusion#

Este script de Spam Bot para WhatsApp con Python es una excelente demostracion de como automatizar tareas repetitivas utilizando herramientas simples como pyautogui y webbrowser. Con solo unas pocas lineas de codigo, puedes enviar mensajes automaticos a cualquier numero de telefono a traves de WhatsApp Web.

Recomendaciones finales#

Reflexion final#

La automatizacion de tareas con Python abre un mundo de posibilidades. Desde enviar mensajes hasta controlar aplicaciones completas, el limite esta en tu imaginacion y conocimiento. Recuerda siempre usar estas herramientas de manera etica y responsable.

Nota: Este script es una herramienta educativa. No uses este conocimiento para actividades maliciosas o que violen los terminos de servicio de las plataformas.

Comunidad TodoReal

¿Te sirvió esta guía o herramienta?

Únete a nuestro canal en Telegram o WhatsApp para no perderte actualizaciones, nuevos servidores y guías avanzadas.

Entradas relacionadas

Comentarios

Comparte tu opinión sobre esta publicación.