La solicitud del cliente en el protocolo HTTP llega al servidor y obtiene algunos datos asumiendo que es una solicitud válida. Esta respuesta del servidor se puede analizar utilizando varios métodos proporcionados por el módulo de requests . Algunas de las formas a continuación brindan información sobre la respuesta enviada desde el servidor al programa Python que se ejecuta en el lado del cliente:
Obtener respuesta inicial
El método get() se utiliza para obtener la información básica de los recursos utilizados en el lado del servidor. Esta función obtiene los datos del servidor y los devuelve como un objeto de respuesta que se puede imprimir en un formato de texto simple.
Python3
# Import libraries import requests # Sending Request req = requests.get('https://www.geeksforgeeks.org/') # Show results print(req.text[:2000])
Producción:
Obtener información de la sesión
El método session() devuelve el objeto de sesión que proporciona ciertos parámetros para manipular las requests. También puede manipular cookies para todas las requests iniciadas desde el objeto de sesión. Si se realiza una gran cantidad de requests a un solo host, se recupera la conexión TCP asociada.
Python3
# Import Libraries import requests # Creating Session s = requests.Session() s.get('http://httpbin.org/cookies/set/sessioncookie/419735271') # Getting Response r = s.get('http://httpbin.org/cookies') # Show Response print(r.text)
Producción:
{ "cookies": { "sessioncookie": "419735271" } }
Manejo de errores
Si se genera algún error al procesar la solicitud al servidor, el programa genera la excepción, que se puede manejar mediante el atributo de tiempo de espera, que define el valor de tiempo hasta que el programa espera y, después de eso, genera el error de tiempo de espera.
Python3
# Import Libraries import requests # Error Handling try: # Creating Request req = requests.get('https://www.geeksforgeeks.org/', timeout=0.000001) except requests.exceptions.RequestException as e: # Raising Error raise SystemExit(e)
Producción:
HTTPSConnectionPool(host=’www.geeksforgeeks.org’, port=443): Se excedieron los reintentos máximos con url: / (Causado por ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x0000018CFDAD83C8>, ‘Se agotó el tiempo de espera de la conexión a www.geeksforgeeks.org) (tiempo de espera de conexión=1e-06)’))
Publicación traducida automáticamente
Artículo escrito por jeeteshgavande30 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA