La solicitud obtiene el tiempo de respuesta (tiempo transcurrido) y el tiempo de espera.
el tiempo de respuesta de la interfaz también es algo a lo que debemos prestar atención. Si el tiempo de respuesta es demasiado largo, tampoco es razonable.
Si el servidor no responde a tiempo y no puede esperar eternamente, puedes establecer un tiempo de espera.
En cuanto al tiempo de respuesta de la solicitud, no hay mucha introducción en el sitio web oficial, busqué en Baidu y descubrí que se obtiene mucha información en r.elapsed.microsegundos, pero todos son ¡equivocado! ! !
Documentos oficiales vencidos
La dirección del documento oficial del método vencido es:. python-requests.org/zh _ cn/latest/API html #Request.Response
Solicitud. Responseelapsed = Ninguno El tiempo transcurrido (como un delta de tiempo) entre el envío de la solicitud y la llegada de la respuesta. Esta propiedad mide específicamente el tiempo entre el envío del primer byte de la solicitud y la finalización del análisis del encabezado. Por lo tanto, no se ve afectado por el valor de respuesta del argumento de la palabra clave de flujo. Traducción simple: calcula el tiempo desde que se envía la solicitud hasta la respuesta del servidor, desde que se envían los primeros datos hasta que se reciben los últimos datos (es decir, la diferencia horaria) y no se ve afectado por el contenido de la respuesta.
2. Utilice ayuda() para ver los métodos transcurridos.
importrequestsr = solicitudes . get(" blogs . com/yoyoketang/")print(r . elapsd)print(r . elapsd . total _ segundos())print(r . elapsd .microsegundos)print ( r . elapsed . segundos)print(r . elapsed . días)print(r . elapsed . max)print(r . elapsed . min)print(r . elapsed . resolución)
2. Internet Los datos se escriben en microsegundos para obtener el tiempo de respuesta y luego se dividen por 1000 * 1000 para obtener la unidad de tiempo en segundos. Cuando la solicitud es inferior a 1 segundo, no se puede encontrar el problema. Si el tiempo excede 1 segundo, surge el problema.
(Obviamente, cuando es mayor que 1 s, solo se truncará la parte decimal).
3. Entonces, la forma correcta de obtener el tiempo de respuesta debería ser: r.elapsed. .total_segundos(), La unidad es s.
Tiempo de espera
1. Si una solicitud tarda mucho en responder y no puede esperar eternamente, puede establecer un tiempo de espera y dejar que genere una excepción.
2. La siguiente solicitud establecerá el tiempo de espera en 1 segundo y generará esta excepción. Excepciones. Tiempo de espera de conexión: httpConnectionPool.
importrequestsr = request.get(".python-requests.org/zh_CN/latest/", tiempo de espera = 1)print(r . transcurrido)print(r . transcurrido . total _ segundos())imprimir (r . transcurrido . microsegundo)