Sempre que entrar em contato com uma API da Web contendo seqüências de consultas extras ou argumentos de rota, a codificação de URL é frequentemente necessária. Qualquer frase de consulta ou argumento de rota dentro do URL deve ser criptografado corretamente. Ao formular informações para envio usando o formato MIME APLICATIVO/X-WWW-FORM-URLENCODED, a codificação de URL é necessária. Você descobrirá como criptografar fragmentos de URL em python ao longo deste artigo.
Exemplo 01: Uso da função de cotação na string
Primeiro de tudo, faça login no Ubuntu 20.04 sistema e tente abrir o terminal do shell nele. Você pode abrir o shell by Ctrl+Alt+T Chave de atalho. Depois de abri -lo, você deve criar um novo arquivo python com qualquer nome usando a instrução Touch abaixo. Você pode ver que nomeamos o arquivo "Teste.py.”
Teste de Touch.pyPara entender o conceito de URL de codificação, precisamos entender o conceito de codificar uma string primeiro. Portanto, neste exemplo, veremos como codificar uma string. Seu arquivo recém -criado está localizado no diretório inicial do seu sistema. Portanto, abra o arquivo explorador e navegue em direção ao diretório inicial. Abra o arquivo recém-criado clicando duas vezes. Escreva o código mostrado abaixo em seu arquivo e salve -o. Você pode ver que este código contém o suporte Python em sua primeira linha. Depois disso, você precisa importar uma biblioteca "urllib" necessária para codificar qualquer URL. Você pode ver que importamos a classe “Parse” desta biblioteca também. Isso é para usar as funções que ocupa para a análise de qualquer corda. Depois disso, definimos uma sequência chamada "str" com algum valor de string nele. Em seguida, usamos a função de "citação" utilizando a classe Parse e "urllib" para codificar o valor da variável "str" e salvá -lo em uma nova variável, "novo.”Na quinta linha, imprimimos a string codificada“ Novo.”
#!/usr/bin/pythonA execução deste arquivo ocorre no terminal através da consulta Python3 como abaixo. O resultado da saída está mostrando a codificação de uma string com sucesso.
Teste $ python3.pyExemplo 02: Uso da função de urlencode na string
No exemplo acima, você viu que usamos a função de citação () para codificar ou citar uma variável do tipo string e funcionou perfeitamente. Por outro lado, você precisa entender que não podemos aplicar o método "urlencode" em qualquer string, porque a string não pode ser codificada em nenhum URL. Vamos dar uma olhada nisso pela primeira vez. Abra o mesmo arquivo novamente e atualize o código como abaixo. Você só precisa alterar a função de "citação" para "urlencode" neste código. Todas as declarações restantes são as mesmas. Salve seu arquivo e feche -o.
#!/usr/bin/pythonPara executar o arquivo, use a consulta declarada do Bellow em sua casca de comando do sistema Ubuntu. Depois de executar o arquivo python, encontramos uma exceção de “TypeError."Isso significa que a função" urlencode "não pode ser aplicada à variável do tipo de string a qualquer custo.
Teste $ python3.pyExemplo 03: Uso da função de urlencode no dicionário
A partir dos dois exemplos acima, entendemos que aplicar a função de urlencode; Devemos ter outra variável de tipo para isso. Portanto, abra o mesmo teste de arquivo.py da pasta doméstico do sistema Linux. Depois de abri -lo, atualize -o com o script mostrado na pequena imagem instantânea abaixo. Adicionamos a mesma biblioteca, "urllib" e importamos sua classe de análise junto com ela. Em seguida, declaramos um dicionário de lista com 2 chaves e 2 valores. Em seguida, usamos esse dicionário nos parênteses da função "urlencode" de uma análise de classe e urllib de pacote para codificá -lo em um formato de URL. Este URL codificado salva em uma variável "novo" e impressa no terminal por uma declaração de impressão na linha 5. Você pode salvar o arquivo python clicando no botão Salvar na parte superior de um arquivo ou simplesmente usando “ctrl+s.”Depois de salvá -lo, clique no sinal“ Cross ”no lado direito da janela do arquivo para fechá -lo.
#!/usr/bin/pythonVamos executar nosso arquivo Python mais uma vez por uma instrução declarada. A saída resultante está mostrando o formato codificado de um dicionário. Está mostrando claramente que o "nome" de uma pessoa é "aqsa", separando o sinal "=". Além disso, está separando um valor -chave de outro, e.g., Nome e sobrenome.
Teste $ python3.pyExemplo 04: Uso de urlencode no dicionário de múltiplos valores
Abra o teste.arquivo py e atualize o código com o script abaixo. Desta vez, estamos usando a lista de dicionários de valor de múltiplos do tipo em nosso código. Você pode ver claramente que o dicionário contém uma lista como um valor nela. Agora veremos como o método "urlencode" funciona nele. Usamos o dicionário "L" no parâmetro de um método "urlencode" com o valor "doseq" como "verdadeiro" para evitar caracteres especiais em nossa saída. Depois disso, imprimimos o valor codificado. Salve seu arquivo usando “Ctrl+S” e pressione o botão cruzado no canto direito da janela do arquivo para desistir.
#!/usr/bin/pythonVamos executar o arquivo para ver o funcionamento do método de urlencode por uma consulta declarada. A saída mostra que o valor codificado mostra os dois valores separados para a chave “Salário.”Isso significa que o urlencode funciona corretamente em listas de dicionário multitype.
Teste $ python3.pyExemplo 05: Uso de urlencode no dicionário
Desta vez, usaremos um URL como um valor para uma chave de dicionário. Então, abra o arquivo “Teste.py ”e atualize seu código com o abaixo-balança um. Você pode ver que usamos o URL como um valor para dizer.
#!/usr/bin/pythonA execução deste código nos mostra a versão codificada do conteúdo do dicionário.
Teste $ python3.pyConclusão:
Fizemos quase todos os exemplos possíveis do método "urlencode" em nosso guia. Espero que você não encontre erro ao implementar esses exemplos.