Por que usar o yaml.Função de Safe_load?
Existem inúmeras instâncias do aplicativo pyyaml em que o carregamento () é utilizado no lugar do saving_load (). Nós propositadamente retiramos as informações sobre a função de carregamento () até agora. Queríamos que eles utilizassem a técnica mais segura para analisar o YAML com Python, porque a maioria das pessoas tem empregos para executar e tem uma tendência a copiar apressadamente alguns códigos de exemplo. No entanto, se você está se perguntando como esses dois variam um do outro, a versão rápida é a seguinte:
Se você estiver familiarizado com o picles, saberá que o load () também é uma função altamente forte. Ambas as técnicas são extremamente inseguras, pois deixam um atacante executar o código arbitrário. Você pode executar o script python, incluindo ligar para o sistema operacional.Biblioteca do Sistema, que pode executar qualquer comando em seu sistema e serializar e desserializar os objetos completos do Python usando a função de carga do Pyyaml. A função de carga () é preterida nas versões recentes de pyyaml. Usá -lo de maneira insegura resultará em um enorme aviso de gordura. Como o cofre_load () contém apenas uma parte da função de carga, ele deve ser usado se você estiver processando os arquivos YAML comuns.
Como usar o Yaml.Função de Safe_load no Ubuntu
Para usar a YAML no Ubuntu 20.04, temos que instalá -lo primeiro. Os dados da YAML podem ser analisados por uma variedade de bibliotecas Python. A estrutura mais popular e abrangente para analisar o YAML é Pyyaml. Você deve usar o PIP para instalar o pyyaml porque não é um componente da biblioteca Python padrão. Instale o Pyyaml executando o seguinte comando:
Exemplo #1: Usando a função SAVE_LOAD para ler e analisar um arquivo YAML
Depois de instalar o Python e as bibliotecas necessárias, criamos dois arquivos (o .arquivo py e .arquivo yml) para demonstrar como podemos analisar um arquivo YAML no Python. Vamos criar um ".arquivo py ”e nomeie -o como“ olá.py ”e o arquivo yaml como“ config.yaml ”.
Como visto na imagem anterior, criamos um arquivo YAML com um URL, número da porta e um vetor de números uniformes. Agora, importe o módulo como mostrado a seguir para utilizar o pyyaml em seus scripts. Lembre -se de que você só importa o "YAML" e não o "pyyaml":
Para executar isso, acessamos a pasta onde nossos arquivos estão localizados. Depois de chegar à pasta, escrevemos o Python3 junto com o nome do arquivo com a extensão.
Este arquivo de configuração pode ser carregado, analisado e usado de uma maneira muito idêntica a carregar o JSON usando o pacote python json. Primeiro, abrimos o arquivo. O yaml.a função spear_load () é então usada para analisá -la. Observe que alteramos um pouco o resultado para melhorar sua legibilidade para você.
Exemplo #2: lendo o .Dados do arquivo YML de um arquivo YAML no Python
Para analisar esse arquivo neste exemplo, primeiro criamos um arquivo YAML/YML chamado “Alunos.YML ”com as seguintes informações:
Depois de criar o “.Arquivo YML ”, escrevemos o seguinte script Python para ler o“ alunos.Arquivo YML ”classificou o conteúdo, dependendo das chaves. O script utilizou a função SAVE_LOAD () para ler todo o conteúdo do “aluno.arquivo yml ”. A saída deste método é uma lista de dicionários em python representando o conteúdo do arquivo. A lista é então transformada em um fluxo YAML usando o método Dump () que foi impresso desde então.
Para executar este script, escrevemos o Python3 junto com o nome do arquivo com a extensão.
A saída mostrada após a execução do script acima mencionado é a seguinte. Cada dicionário na lista Python de dicionários que foram criados após a conversão do conteúdo dos “alunos.O arquivo YML ”nos membros da YAML é convertido. A configuração padrão para o parâmetro de tecla de classificação do método dump () é verdadeiro. À luz das teclas, a saída exibe o conteúdo YAML classificado.1
Exemplo #3: lendo os valores e chaves do .Arquivo YML
Neste exemplo, usamos os mesmos arquivos anteriores (olá.PY e estudantes.yml). A função Item () é usada para ler as chaves e seu valor relacionado após o conteúdo do arquivo ser carregado na variável de leitura. Os pares de valor-chave foram impressos usando um loop aninhado "para" que iterou sobre todo o conteúdo do arquivo.
Este script gera os resultados da seguinte forma:
Depois de executar o script acima mencionado, a saída listada será exibida. O script não usa a função Dump (), portanto o conteúdo do arquivo não foi classificado.
Exemplo #4: lendo o .Dados de arquivo YML na lista de dicionários
O conteúdo do arquivo YAML é transformado em uma lista de dicionários em python usando o método spear_load (). Os dados também podem ser carregados de fontes não confiáveis usando esta técnica. Para carregar o conteúdo do arquivo YAML usando o método sAFE_LOAD () e imprimir o conteúdo carregado, crie um arquivo python que contenha o seguinte script:
O script anterior converte os dados do “.Arquivo YML ”em uma lista de dicionários.
Como você pode ver, depois de executar o script acima mencionado, os dados do “.O arquivo YML ”(contendo os dados dos alunos) é convertido em uma lista de dicionários. O resultado contém uma lista de todos os dicionários disponíveis.
Conclusão
Este artigo demonstrou os múltiplos métodos para ler o conteúdo da YAML dos arquivos e objetos Python usando os vários exemplos. Neste post, discutimos os arquivos YAML e os vários métodos para analisá-los usando o spear_load (), que é uma função embutida do YAML. Nos exemplos deste tutorial, tentamos ensiná -lo a ler e analisar um “.Arquivo YML ”, lendo os valores e chaves de um“.Arquivo YML ”e converta o“.Dados do arquivo yml ”em uma lista de dicionários usando a função spear_load ().