Solicitudes de Python: todo lo que necesita saber



Este blog lo guiará a través del módulo de solicitudes de Python en detalle. Se familiarizará con las solicitudes GET y POST, los objetos de sesión, las cookies y los encabezados.

Las solicitudes de Python acumulan casi 400.000 descargas diarias. Este número es lo suficientemente evidente como para comprender la popularidad de este . En los últimos años, el lenguaje de programación Python se ha convertido en el lenguaje de programación más deseado por muchos desarrolladores. Los conceptos y las bibliotecas, como las solicitudes, son una de las muchas razones por las que los desarrolladores hacen la transición de otros lenguajes de programación a Python. En este blog, repasaremos los siguientes temas:

¿Qué son las solicitudes de Python?

Las solicitudes de Python fueron escritas por Kenneth Reitz y con licencia de apache 2.0. Es una biblioteca HTTP amigable para los humanos, como se menciona en la página de documentación oficial. Es fácil de usar y básicamente se utiliza para realizar todo tipo de solicitudes HTTP. A continuación, se muestran algunas características avanzadas que vienen con las solicitudes:
  1. Mantener vivo y agrupación de conexiones
  2. URL y dominios internacionales
  3. Sesiones con persistencia de cookies
  4. Verificación SSL al estilo del navegador
  5. Decodificación automática de contenido
  6. Autenticación básica / implícita
  7. Cookies elegantes de clave / valor
  8. Descompresión automática
  9. Cuerpos de respuesta Unicode
  10. Soporte de proxy HTTP
  11. Cargas de archivos de varias partes
  12. Descargas en streaming
  13. Tiempos de espera de conexión
  14. Solicitudes fragmentadas
Estas son todas las características avanzadas de la biblioteca de solicitudes de Python, intentemos entender por qué usamos las solicitudes de Python en primer lugar.

¿Por qué utilizar solicitudes de Python?

¿Cuando se trata de por qué usamos solicitudes de Python? La razón es bastante simple. Mientras usa solicitudes de Python, no tiene que agregar manualmente las consultas a sus URL y codificar los datos de las publicaciones. Facilita nuestro trabajo a la hora de realizar solicitudes http de cualquier tipo.Ahora que estamos familiarizados con las solicitudes de Python y por qué las usamos en Python, intentemos comprender cómo vamos a instalar las solicitudes en nuestro proyecto o sistema.

¿Cómo instalar solicitudes de Python?

La parte de instalación también es muy fácil. Si tiene la configuración de pipenv instalada en su sistema, simplemente puede ejecutar el siguiente comando en la terminal.

solicitudes de instalación de $ pip

Esto instalará la biblioteca de solicitudes en su sistema. Hay un enfoque más para instalar solicitudes. Si está utilizando pycharm, puede agregar solicitudes en el intérprete del proyecto en la configuración. Tiene el mismo propósito que el terminal en caso de instalar la biblioteca en nuestro proyecto.Ahora que hemos terminado con la instalación, intentemos comprender cómo realizaremos las solicitudes get y post en python.

¿Cómo realizar solicitudes de obtención y publicación?

Get request se utiliza básicamente para solicitar los datos del servidor. A continuación se muestra la sintaxis para realizar una solicitud de obtención.
importar solicitudes res = solicitudes.get ('url') #res es el objeto de respuesta aquí.
La solicitud de publicación se utiliza para enviar los datos que se procesarán al servidor. A continuación se muestra la sintaxis para realizar una solicitud de publicación.
importar solicitudes carga útil = {'clave1': 'valor1'} res = solicitudes.post ('url', datos = carga útil)
Ahora que sabemos cómo podemos realizar solicitudes de obtención y publicación, echemos un vistazo a cómo podemos pasar parámetros a la URL mediante la solicitud de obtención.

Pasar parámetros en una URL

Pasar parámetros en una URL es tan simple como realizar una solicitud de obtención. A continuación se muestra un ejemplo para pasar parámetros a la URL.
importar solicitudes carga útil = {'clave1': 'valor1', 'clave2': 'valor2'} res = solicitudes.get ('url', params = carga útil) print (res.url) # esto imprimirá la URL con los parámetros pasó a través de la solicitud de obtención.

Código de estado

También podemos verificar el código de estado, el siguiente es el código para verificar el código de estado:





importar solicitudes res = solicitudes.get ('url') imprimir (res.status_code ())
Si el código devuelve 200, significa que no hay ningún error y la solicitud está bien. Si hacemos una solicitud incorrecta, el código devolverá un código como 404 o 505 que generará un error http.

Contenido de respuesta

También podemos leer el contenido de la respuesta del servidor. La biblioteca decodificará automáticamente el contenido del servidor.
importar solicitudes res = solicitudes.get ('url') imprimir (res.content)

Requests también tiene un decodificador json incorporado.

importar solicitudes res = solicitudes.get ('url') print (res.json ()) # esto obtendrá la respuesta en formato json

Carga de archivos de varias partes

Es muy fácil cargar archivos de varias partes mediante solicitudes.
importar solicitudes archivos = {'archivo': open ('nombre de archivo', 'rb')} res = solicitudes.post ('url', archivos = archivos) imprimir (res.text)
Para enviar varios archivos, especificaremos varios archivos en el parámetro de archivos.

Cookies y encabezados

Podemos ver los encabezados de respuesta del servidor y las cookies utilizando el objeto de respuesta. A continuación se muestra el código para ver los encabezados del servidor.
importar solicitudes res = request.get ('url') print (res.headers)
También podemos pasar encabezados personalizados a la URL. Echemos un vistazo al código.
importar encabezados de solicitudes = {'clave1': 'valor1'} res = solicitudes.get ('url', encabezados = encabezados) imprimir (res.cabezados)
Requests no cambia su comportamiento según los encabezados personalizados. Simplemente se pasan a la solicitud final. galletas también se puede ver utilizando el objeto de respuesta.
importar solicitudes #para pasar nuestras propias cookies podemos usar el parámetro cookies cookies = dict (cookies = 'trabajando') res = request.get ('url', cookies = cookies) print (res.text)

Las cookies se devuelven en un RequestCookieJar, que actúa como un diccionario pero también ofrece una interfaz más completa, adecuada para su uso en múltiples dominios o rutas.



una matriz de objetos java

Objeto de sesión

El objeto de sesión le permite conservar ciertos parámetros en las solicitudes.
  • Persiste las cookies en todas las solicitudes realizadas desde la instancia de sesión
  • Usar agrupación de conexiones urllib3
  • Incremento significativo del desempeño
  • Un objeto de sesión tiene todos los métodos de la API de solicitudes principales
A continuación se muestra el código para conservar algunas cookies en las solicitudes.
s = request.session () s.get ('url') res = s.get ('url') print (res.text)

Errores y excepciones

A continuación se muestran los errores y las excepciones que se generan en una solicitud de Python.
  • En el caso de un problema de red, las solicitudes generarán una excepción ConnectionError.
  • Response.raise_for_status () generará un error HTTP cuando haya un código de estado incorrecto.
  • Si hay un tiempo de espera, generará una excepción de tiempo de espera
  • La excepción TooManyRedirects se genera si la solicitud excede el número configurado de número máximo de redireccionamientos.
En este blog hemos discutido el módulo de solicitudes de Python en el que tenemos varias características avanzadas. Discutimos la instalación y la realización de una solicitud de obtención y publicación con el contenido de la respuesta y otros conceptos en la biblioteca de solicitudes en Python. El módulo de solicitudes de Python es una de las muchas características extraordinarias listas para usar de lenguaje de programación python . Puede iniciar su aprendizaje inscribiéndose en y descubre las posibilidades del lenguaje de programación Python. ¿Tienes alguna duda? menciónalos en la sección de comentarios, nos comunicaremos contigo.