Cuando uno realiza una solicitud a un URI, devuelve una respuesta. Este objeto de respuesta en términos de python es devuelto por requestes.method(), siendo el método: obtener, publicar, poner, etc. La respuesta es un objeto poderoso con muchas funciones y atributos que ayudan a normalizar los datos o crear porciones ideales de código. Por ejemplo, response.status_code devuelve el código de estado de los propios encabezados y se puede comprobar si la solicitud se procesó correctamente o no.
El objeto de respuesta se puede utilizar para implicar muchas características, métodos y funcionalidades.
Ejemplo :
Python3
# import requests module import requests # Making a get request response = requests.get('https://api.github.com/') # print request object print(response.url) # print status code print(response.status_code)
Guarde este archivo como request.py y ejecútelo usando el siguiente comando
Python request.py
El código de estado 200 indica que la solicitud se realizó con éxito.
Métodos de respuesta
Método | Descripción |
---|---|
respuesta.encabezados | response.headers devuelve un diccionario de encabezados de respuesta. |
respuesta.codificación | response.encoding devuelve la codificación utilizada para decodificar response.content. |
respuesta.transcurrida | response.elapsed devuelve un objeto timedelta con el tiempo transcurrido desde el envío de la solicitud hasta la llegada de la respuesta. |
respuesta.cerrar() | response.close() cierra la conexión con el servidor. |
respuesta.contenido | response.content devuelve el contenido de la respuesta, en bytes. |
respuestas.cookies | response.cookies devuelve un objeto CookieJar con las cookies enviadas desde el servidor. |
respuesta.historial | response.history devuelve una lista de objetos de respuesta que contienen el historial de requests (url). |
respuesta.is_permanent_redirect | response.is_permanent_redirect devuelve True si la respuesta es la URL redirigida permanente; de lo contrario, False. |
respuesta.is_redirect | response.is_redirect devuelve True si la respuesta fue redirigida, de lo contrario, False. |
respuesta.iter_content() | response.iter_content() itera sobre response.content. |
respuesta.json() | response.json() devuelve un objeto JSON del resultado (si el resultado se escribió en formato JSON, si no, genera un error). |
respuesta.url | response.url devuelve la URL de la respuesta. |
respuesta.texto | response.text devuelve el contenido de la respuesta, en Unicode. |
respuesta.estado_código | response.status_code devuelve un número que indica el estado (200 es correcto, 404 es no encontrado). |
respuesta.solicitud | response.request devuelve el objeto de solicitud que solicitó esta respuesta. |
respuesta.motivo | response.reason devuelve un texto correspondiente al código de estado. |
respuesta.raise_for_status() | response.raise_for_status() devuelve un objeto HTTPError si se ha producido un error durante el proceso. |
respuesta.ok | response.ok devuelve True si status_code es menor que 200; de lo contrario, False. |
respuesta.enlaces | response.links devuelve los enlaces del encabezado. |
Métodos de respuesta comúnmente utilizados
Algunos métodos se usan más comúnmente con la respuesta, como response.json(), response.status_code, response.ok, etc. Las requests se usan principalmente para realizar requests http a las API (interfaz de programación de aplicaciones). Aquí se analizan algunos de los métodos de respuesta más utilizados:
respuesta.json()
response.json() devuelve un objeto JSON del resultado (si el resultado se escribió en formato JSON, si no, genera un error).
¿Cómo usar response.json() usando requests de Python?
Para ilustrar el uso de response.json(), hagamos ping en geeksforgeeks.org. Para ejecutar este script, debe tener Python y requests instalados en su PC.
Código de ejemplo –
Python3
# import requests module import requests # Making a get request response = requests.get('https://api.github.com') # print response print(response) # print json content print(response.json())
Implementación de ejemplo –
Guarde el archivo anterior como request.py y ejecútelo usando
Python request.py
Producción –
Verifique el contenido json en la salida del terminal. Esto básicamente devuelve un diccionario de Python.
respuesta.ok
response.ok devuelve True si status_code es menor que 200; de lo contrario, False.
¿Cómo usar response.ok usando requests de Python?
Para ilustrar el uso de response.ok, hagamos ping en geeksforgeeks.org. Para ejecutar este script, debe tener Python y requests instalados en su PC.
Código de ejemplo –
Python3
# import requests module import requests # Making a get request response = requests.get('https://api.github.com/') # print response print(response) # print if status code is less than 200 print(response.ok)
Implementación de ejemplo –
Guarde el archivo anterior como request.py y ejecútelo usando
Python request.py
Producción –
Verifique que True coincida con la condición de que la solicitud sea menor o igual a 200.
respuesta.estado_código
response.status_code devuelve un número que indica el estado (200 es correcto, 404 es no encontrado).
¿Cómo usar response.status_code usando requests de Python?
Para ilustrar el uso de response.status_code, hagamos ping a api.github.com. Para ejecutar este script, debe tener Python y requests instalados en su PC.
Código de ejemplo –
Python3
# import requests module import requests # Making a get request response = requests.get('https://api.github.com/') # print response print(response) # print request status_code print(response.status_code)
Implementación de ejemplo –
Guarde el archivo anterior como request.py y ejecútelo usando
Python request.py
Producción –
Verifique eso y 200 en la salida que se refieren a HttpResponse y código de estado respectivamente.
respuesta.encabezados
response.headers devuelve un diccionario de encabezados de respuesta. Para obtener más información sobre los encabezados, visite – Diferentes encabezados HTTP
¿Cómo usar response.headers usando requests de Python?
Para ilustrar el uso de response.headers, hagamos ping a la API de Github. Para ejecutar este script, debe tener Python y requests instalados en su PC.
Código de ejemplo –
Python3
# import requests module import requests # Making a get request response = requests.get('https://api.github.com') # print response print(response) # print headers of response print(response.headers)
Implementación de ejemplo –
Guarde el archivo anterior como request.py y ejecútelo usando
Python request.py
Producción –
respuesta.contenido
response.content devuelve el contenido de la respuesta, en bytes. Básicamente, se refiere al contenido de respuesta binaria.
¿Cómo usar response.content usando requests de Python?
Para ilustrar el uso de response.content, hagamos ping a la API de Github. Para ejecutar este script, debe tener Python y requests instalados en su PC.
Código de ejemplo –
Python3
import requests # Making a get request response = requests.get('https://api.github.com') # printing request content print(response.content)
Implementación de ejemplo –
Guarde el archivo anterior como request.py y ejecútelo usando
Python request.py
Producción –
Verifique que b’ al comienzo de la salida, significa la referencia a un objeto de bytes.
Publicación traducida automáticamente
Artículo escrito por NaveenArora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA