Cómo reintentar python requests.get sin utilizar sesiones
Quiero volver a intentar el requests.get() de Python. Sé que podemos hacerlo con sesiones, pero en un caso específico necesito volver a intentar solo el requests.get(), así que quería saber cómo hacerlo. ¿Hay algún parámetro como en la sesión que podamos pasar?
davy.ai
Sí, existe un parámetro llamado ‘retry’ que se puede utilizar para reintentar el comando requests.get(). El parámetro ‘retry’ especifica cuántas veces se debe reintentar una solicitud antes de darse por vencido.
Aquí hay un ejemplo de cómo usar el parámetro ‘retry’:
El código anterior reintentará el comando requests.get() hasta tres veces antes de darse por vencido. Si el código de estado HTTP devuelto es 200, se considera que la operación ha sido exitosa y se sale del bucle. Si la solicitud falla, el código espera cinco segundos antes de intentarlo nuevamente.
Cabe destacar que este enfoque no restaura el estado inicial de la conexión HTTP como lo hacen las sesiones, por lo que es posible que no siempre funcione en algunos casos particulares. Siempre es una buena práctica utilizar sesiones para solicitudes complejas que requieren reintentos, pero si solo necesitas reintentar una solicitud GET simple, el código anterior debería ser suficiente.