1. Preparar herramientas necesarias
Instala curl
, python3
, y pip
si no están ya instalados:
sudo apt update && sudo apt install curl python3 python3-pip -y
2. Crear una lista de agentes de usuario (User-Agents)
Los agentes de usuario son cadenas que identifican navegadores o dispositivos. Crea un archivo llamado user_agents.txt
con una lista de agentes de usuario comunes.
Ejemplo del contenido de user_agents.txt
:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1
Mozilla/5.0 (Linux; Android 11; Pixel 4 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Mobile Safari/537.36
3. Crear un script en Python para rotar los agentes de usuario
Usa Python para automatizar las peticiones con agentes rotatorios. Guarda el siguiente código como rotating_user_agents.py
:
import requests
import random
import time
# Leer los agentes de usuario desde el archivo
with open("user_agents.txt", "r") as f:
user_agents = [line.strip() for line in f.readlines()]
# URL objetivo
url = "http://target.com"
# Número de peticiones
num_requests = 50
for i in range(num_requests):
# Seleccionar un agente de usuario aleatorio
user_agent = random.choice(user_agents)
# Configurar encabezados
headers = {
"User-Agent": user_agent
}
try:
# Realizar la petición
response = requests.get(url, headers=headers)
# Mostrar el resultado
print(f"[{i+1}/{num_requests}] Status: {response.status_code}, User-Agent: {user_agent}")
# Pausa aleatoria entre peticiones para no parecer un bot
time.sleep(random.uniform(1, 3))
except Exception as e:
print(f"Error en la petición: {e}")
4. Ejecutar el script
Asegúrate de que el archivo user_agents.txt
esté en la misma carpeta que el script y luego ejecuta el script en Python:
python3 rotating_user_agents.py
5. Ajustar parámetros
- URL: Cambia el valor de
url
en el script a la página que deseas probar. - Número de peticiones: Modifica la variable
num_requests
para ajustar la cantidad de solicitudes que deseas realizar. - Intervalos de tiempo: Ajusta
time.sleep
para establecer pausas más largas si es necesario.
6. Opciones avanzadas
Si deseas pruebas más avanzadas o simulación de rotación de IP junto con rotación de User-Agent:
- Instala
tor
: Usator
para cambiar la IP con cada petición. - Usa proxies: Integra una lista de proxies rotativos en el script.
Ejemplo de integración con tor
:
sudo apt install tor
Añade a tu script Python:
proxies = {
"http": "socks5h://127.0.0.1:9050",
"https": "socks5h://127.0.0.1:9050",
}
response = requests.get(url, headers=headers, proxies=proxies)
7. Consideraciones legales y éticas
- Consentimiento previo: Asegúrate de tener permiso para realizar estas pruebas.
- Evitar abuso: Configura pausas entre solicitudes para no dañar servidores ni parecer un ataque de denegación de servicio.
Con este enfoque, puedes realizar peticiones web con agentes de usuario rotatorios y personalizar tus pruebas para diversos escenarios.