Como usar os dados da API JSON no Python

Como usar os dados da API JSON no Python

Objetivo

Consuma uma API JSON em Python.

Distribuições

Isso funcionará em qualquer distribuição Linux.

Requisitos

Uma instalação do Linux Working com Python.

Dificuldade

Fácil

Convenções

  • # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
  • $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

Introdução

Uma das principais razões pelas quais você gostaria de trabalhar com o JSON em Python está consumindo APIs. Existem centenas de excelentes APIs públicas por aí e prontas para usar em seu aplicativo. Até jogadores enormes na web, como o Facebook e o Twitter, fora de APIs para você trabalhar com.

Você pode criar aplicativos inteiros em torno dos dados da API, incluindo a criação de aplicativos da Web que se agregam, manipulam e exibem esses dados de uma maneira conveniente.

Configure um arquivo

Antes de começar a trabalhar com APIs, você precisa configurar um arquivo python. É muito mais fácil do que trabalhar no intérprete. Comece importando o módulo JSON.

importar json

Você precisará urllib3. Permite acessar um URL com python.

Importar urllib3

Abra o URL

Embora existam uma tonelada de grandes APIs na internet, a maioria deles exige que você se inscreva para obter uma chave de API. Este guia não é sobre isso ou usando uma API específica. A API Opendota fornece acesso a uma tonelada de dados referentes ao popular MOBA DOTA2 sem a necessidade de se inscrever ou obter uma chave. Caso você não soubesse, está disponível para Linux. Essa é a API que este guia usará.

Você pode encontrar a documentação para toda a API em https: // docs.Opendota.com, Mas este guia estará usando o https: // API.Opendota.com/api/heróis Dados de heróis.

Comece criando um PoolManager () objeto usando urllib3. É esse objeto que você pode usar para fazer solicitações para um site.

http = urllib3.PoolManager () 

Fazer um PEGAR solicitação usando o http Objeto que você acabou de criar para a API dota.

heróis = http.solicitação ('Get', 'https: // API.Opendota.com/api/heróis ')

Analise o json

Tente imprimir o Heróis variável que você acabou de criar.

impressão (heróis)

Não o que você esperava? Ainda é um objeto de solicitação e tem mais dados do que você precisa. Tente imprimir Heróis.dados

impressão (heróis.dados)

Isso parece mais próximo, mas ainda não está lá. Decode os dados para UTF-8.

impressão (heróis.dados.Decode ('UTF-8'))

Agora, isso é JSON. Você pode analisar isso com o módulo JSON.

heróis_dict = json.Carrega (heróis.dados.Decode ('UTF-8')) Print (Heroes_Dict)

Trabalhe com os dados

Você tem um dicionário python contendo todos os dados da API. Agora você pode usar esses dados, como escolher. Tente iterando sobre isso.

Para Hero in Heroes: Print (Heroes ['Localized_Name']))

Seu loop imprimirá o nome de todos os heróis em Dota2. Você pode ver no dicionário que há mais dados de Ton, mas você sabe como acessar isso.

Pensamentos finais

A estrada não havia tão direto, mas certamente chegou lá. Se você está fazendo isso com as chaves da API, isso apenas mudará a estrutura de URL. Todo o resto deve permanecer o mesmo o tempo todo. Agora você está equipado para acessar dados da API de seus programas Python.

Exercício

Escolha e API de https: // github.com/Toddmotto/Public-Apis, e convertê -lo em um dicionário de Python. Itera sobre ele e imprima os valores de pelo menos duas chaves.

Tutoriais do Linux relacionados:

  • Coisas para instalar no Ubuntu 20.04
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Melhor tocador de música para Linux
  • Download do Linux
  • Comandos Linux: os 20 comandos mais importantes que você precisa para…
  • Melhor distro Linux para desenvolvedores
  • Como habilitar o enormePages no Linux
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Comandos básicos do Linux
  • Como imprimir a árvore do diretório usando o Linux