es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Código de estado HTTP 429: Demasiadas solicitudes, Python

Estoy enfrentando un error, 429: Demasiadas solicitudes. El error ocurre en el bucle for. Intenté restablecer las cookies pero no ayuda. El error sigue ocurriendo. No puedo permitirme el método de espera. Necesito una solución para que el programa pueda dar resultados continuos.

from bs4 import BeautifulSoup
import requests

try:
  from googlesearch import search
except ImportError:
  print("No se encontró el módulo 'google'")

r = requests.get("http://httpbin.org/cookies")

consulta = "Cómo aumentar las ventas"
arregloUrls = [] 
for j in search(consulta, tld="co.in", lang='en', num=50, stop=10, pause=2):
  arregloUrls.append(j)
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El error 429 usualmente indica que el servidor al que estás solicitando datos está limitando la velocidad de tus peticiones. Esto se hace comúnmente para prevenir que scripts automatizados sobrecarguen el servidor con solicitudes.

    Para resolver este problema, puedes intentar implementar algunas estrategias:

    1. Agregar un retraso entre las solicitudes: En lugar de usar el método sleep, puedes usar la función incorporada time.delay() para pausar la ejecución del script un corto período de tiempo entre cada iteración del bucle. Esto puede ayudar a prevenir que el servidor sea abrumado con solicitudes todas al mismo tiempo.
    2. Implementar gestión de sesión: En lugar de restablecer las cookies en cada solicitud, puedes intentar usar un objeto de sesión para mantener el estado de tus solicitudes. Esto puede ayudar a reducir la cantidad de solicitudes que haces al servidor, y también puede ayudarte a evitar problemas de limitación de velocidad.

    3. Usar un conjunto rotativo de direcciones IP: Si la limitación de velocidad se está aplicando a tu dirección IP, puedes intentar usar un conjunto rotativo de direcciones IP para hacer más difícil que el servidor identifique y bloquee tus solicitudes.

    En general, la mejor solución dependerá de las circunstancias específicas de tu proyecto y la causa del problema de limitación de velocidad. Sin embargo, al implementar algunas o todas estas estrategias, deberías poder reducir la frecuencia de los errores 429 y asegurarte de que tu programa pueda seguir produciendo resultados.

Comments are closed.