Yaml safe_load

Yaml safe_load
YAML es un lenguaje de serialización que los humanos pueden leer con frecuencia y se usa con frecuencia para almacenar los datos y la configuración de los archivos. El análisis es el proceso de examinar más a fondo la estructura lógica después de leer los datos del archivo YAML. Cuando se analiza un archivo Yaml en Python, su contenido se analiza como un diccionario en Python. El ".YML "o".Yaml ”son las dos extensiones de archivos posibles para los archivos YAML.

¿Por qué usar el Yaml?.Función SAFE_LOAD?

Existen numerosas instancias de la aplicación Pyyaml ​​donde la carga () se utiliza en lugar de safe_load (). Deseolamos a propósito la información sobre la función Load () de usted hasta ahora. Queríamos que utilizaran la técnica más segura para analizar el Yaml con Python porque la mayoría de las personas tienen trabajos para realizar y tienden a copiar apresuradamente algunos códigos de ejemplo. Sin embargo, si se pregunta cómo estos dos varían entre sí, la versión rápida es la siguiente:

Si está familiarizado con Pickle, sabrá que Load () también es una función muy fuerte. Ambas técnicas son extremadamente inseguras, ya que dejan que un atacante ejecutara el código arbitrario. Puede ejecutar el script de Python, incluido llamar al sistema operativo.Biblioteca del sistema, que puede ejecutar cualquier comando en su sistema y serializar y deserializar los objetos de Python completos utilizando la función de carga de Pyyaml. La función Load () está en desuso en las versiones recientes de Pyyaml. Usarlo de manera insegura dará como resultado una gran advertencia de grasa. Dado que safe_load () solo contiene una parte de la función de carga, debe usarse si está procesando los archivos YAML ordinarios.

Cómo usar el Yaml.Función Safe_Load en Ubuntu

Para usar yaml en ubuntu 20.04, primero tenemos que instalarlo. Los datos YAML pueden ser analizados por una variedad de bibliotecas de Python. El marco más popular e integral para analizar el Yaml es Pyyaml. Debe usar el PIP para instalar el Pyyaml ​​porque no es un componente de la biblioteca Python predeterminada. Instale el pyyaml ​​ejecutando el siguiente comando:

Ejemplo #1: Uso de la función Safe_Load para leer y analizar un archivo YAML

Después de instalar el python y las bibliotecas requeridas, creamos dos archivos (el .archivo py y .Archivo YML) para demostrar cómo podemos analizar un archivo YAML en Python. Creemos un ".PY "FILE Y NÚMELO COMO" Hola.py "y el archivo yaml como" configurar.Yaml ".

Como se ve en la imagen anterior, creamos un archivo YAML con una URL, un número de puerto y un vector de números uniformes. Ahora, importe el módulo como se muestra a continuación para utilizar el Pyyaml ​​en sus scripts. Tenga en cuenta que solo importa el "Yaml" y no el "Pyyaml":

Para ejecutar esto, accedemos a la carpeta donde se encuentran nuestros archivos. Después de llegar a la carpeta, escribimos el Python3 junto con el nombre del archivo con la extensión.

Este archivo de configuración se puede cargar, analizar y utilizar de una manera muy idéntica a la carga del JSON usando el paquete Python JSON. Primero, abrimos el archivo. El yaml.La función safe_load () se usa para analizarla. Tenga en cuenta que alteramos ligeramente el resultado para mejorar su legibilidad para usted.

Ejemplo #2: leyendo el .Datos de archivo YML de un archivo YAML en Python

Para analizar este archivo en este ejemplo, primero creamos un archivo YAML/YML llamado "Estudiantes.YML ”con la siguiente información:

Después de crear el ".File YML ", escribimos el siguiente script de Python para leer el" Estudiantes.contenido ordenado por archivo YML dependiendo de las claves. El script utilizó la función safe_load () para leer todo el contenido del "estudiante.archivo YML ". La salida de este método es una lista de diccionarios en Python que representa el contenido del archivo. La lista se transforma luego en una secuencia YAML utilizando el método dump () que desde entonces se ha impreso.

Para ejecutar este script, escribimos el python3 junto con el nombre del archivo con la extensión.

La salida que se muestra después de ejecutar el script mencionado anteriormente es el siguiente. Cada diccionario en la lista de diccionarios de Python que se crearon después de convertir el contenido de los "estudiantes.El archivo YML ”en los miembros de YAML se convierte. La configuración predeterminada para el parámetro de clave de clasificación del método dump () es verdadero. A la luz de las teclas, la salida muestra el contenido de YAML ordenado.1

Ejemplo #3: Leer los valores y claves del .archivo YML

En este ejemplo, usamos los mismos archivos anteriores (hola.Py y estudiantes.YML). La función item () se usa para leer las claves y su valor relacionado después de que el contenido del archivo se carga en la variable de lectura. Los pares de valor clave se imprimieron utilizando un bucle anidado "para" que iteraba sobre todo el contenido del archivo.

Este script genera los resultados de la siguiente manera:

Después de ejecutar el script mencionado anteriormente, la salida enumerada aparecerá. El script no usa la función dump (), por lo tanto, el contenido del archivo no se ha ordenado.

Ejemplo #4: leyendo el .Datos de archivo YML en la lista de diccionarios

El contenido del archivo YAML se transforma en una lista de diccionarios en Python utilizando el método safe_load (). Los datos también se pueden cargar desde las fuentes poco confiables utilizando esta técnica. Para cargar el contenido del archivo YAML utilizando el método safe_load () e imprimir el contenido cargado, cree un archivo Python que contenga el siguiente script:

El script anterior convierte los datos del ".Archivo YML "en una lista de diccionarios.

Como puede ver, después de ejecutar el script mencionado anteriormente, los datos del ".El archivo YML ”(que contiene los datos de los estudiantes) se convierte en una lista de diccionarios. El resultado contiene una lista de todos los diccionarios disponibles.

Conclusión

Este artículo demostró los múltiples métodos para leer el contenido YAML de los archivos y los objetos de Python utilizando los diversos ejemplos. En esta publicación, discutimos los archivos YAML y los diversos métodos para analizarlos utilizando safe_load () que es una función incorporada de YAML. En los ejemplos de este tutorial, tratamos de enseñarle cómo leer y analizar un ".archivo YML ", leyendo los valores y claves de un".Archivo YML "y convierta el".YML ”Archivo los datos en una lista de diccionarios utilizando la función SAFE_LOAD ().