Obtendo dados de uma API

Compartilhar no Facebook
Compartilhar no Twitter
Compartilhar no LinkedIn
Compartilhar no telegrama
Compartilhar no Whatsapp

Conteúdo

Este artigo foi publicado como parte do Data Science Blogathon

Introdução

A obtenção de dados completos e de alto desempenho nem sempre é o caso no Aprendizado de Máquina. Enquanto trabalhava em qualquer declaração de problema do mundo real ou tentava construir qualquer tipo de projeto como o Machine Learning Practioner, precisa dos dados.

Para atender à necessidade de dados na maioria das vezes, você precisa obter dados da API e, se o site não fornece a API, a única opção que resta é Web Scraping.

Neste tutorial, vamos aprender como você pode usar API, extrair dados e salvar como quadro de dados.

75037dados 20 extração 20 característica 20img-8441230

Tabela de conteúdo

  • Obtendo dados de uma API
    1. O que é API
    2. Importância de usar API
    3. Como obter uma API
    4. Código prático para extrair dados da API
  • Obtenção de dados usando bancos de dados SQL
  • EndNote

Obtendo dados de uma API

O que é API

API significa Interface de Programação de Aplicativos. API basicamente funciona como uma interface entre dois softwares de comunicação. Agora vamos entender como?

Importância de usar API

Considere um exemplo, se tivermos que reservar uma passagem de trem, então temos várias opções como o site IRCTC, Yatra, faça minha viagem, etc. Agora, todas essas são organizações diferentes, e suponha que reservamos o número do assento 15 do vagão B15, se alguém visitar e tentar reservar o mesmo lugar em um software diferente, Será reservado ou não? Vai aparecer como reservado.

Embora sejam empresas diferentes, software diferente, são capazes de compartilhar esta informação. Portanto, o compartilhamento de informações ocorre entre vários sites via API, é por isso que APIs são importantes.

Cada organização fornece serviços em vários sistemas operacionais, como ios, andróide, que são integrados a um único banco de dados. Portanto, eles também usam API para obter dados do banco de dados para vários aplicativos.

Agora vamos entender de forma prática como obter dados usando um quadro de dados usando Python.

Como obter uma API?

Usaremos o site oficial do TMDB, que fornece diferentes APIs para obter diferentes tipos de dados. vamos obter dados de filmes com melhor classificação em nosso quadro de dados. Para obter os dados, deve passar API.

Visite a Site TMDB e registre-se e faça login com sua conta do Google. Depois disso, na seção do seu perfil, configurações de visita. No painel de configurações à esquerda, no último segundo opção, você pode encontrar uma opção como API, basta clicar nele e gerar sua API.

59207get20imdb20api20key-1244880

Use a chave de API para obter dados de filmes com as melhores classificações

Agora que você tem sua própria chave de API, visite o site do desenvolvedor TMDB API que você pode ver na seção API no topo. Clique em Filmes e o tour receberá a classificação mais alta agora, na melhor janela de classificação, visite a opção Experimente agora, onde você pode ver no lado direito do botão de envio de solicitação, tem um link para os filmes com melhor classificação.

https://api.themoviedb.org/3/movie/top_rated?api_key =<<Chave API>>&idioma = en-US&page = 1

Copie o link e, em vez da chave API, cole a chave de API que você gerou e abra o link, você verá os dados semelhantes a JSON.

Agora, para entender esses dados, existem várias ferramentas como o visualizador JSON. Se você desejar, você pode abri-lo e colar o código no visualizador. É um dicionário e as informações necessárias sobre os filmes estão presentes na chave de resultados.

Os dados totais estão presentes em 428 páginas e o número total de filmes é 8551. Portanto, temos que criar um quadro de dados que terá 8551 linhas e os campos que iremos extrair são id, título do filme, data de lançamento, descrição geral, popularidade, voto. média, contagem de votos. Portanto, o quadro de dados que receberemos terá o formato 8551 * 7.

Código prático para obter dados da API

Abra seu Jupyter Notebook para escrever o código e extrair os dados para o quadro de dados. Instale a biblioteca e as solicitações do pandas se você não tiver o uso do comando pip

pip instalar pandas
pedidos de instalação de pip

Agora defina sua chave de API no link e faça uma solicitação ao site TMDB para extrair os dados e salvar a resposta em uma variável.

api_key = sua chave de API
link = "https://api.themoviedb.org/3/movie/top_rated?api_key =<<Chave API>>&idioma = en-US&page = 1"
resposta = solicitações.get(ligação)

Não se esqueça de mencionar sua chave de API no link. E depois de executar o código acima, sim imprima a resposta, você pode ver a resposta em 200, o que significa que tudo está funcionando bem e você obteve os dados na forma de JSON.

Os dados que queremos estão nos principais resultados, então tente imprimir a chave de resultado.

response.json()["resultados"]

Para criar o quadro de dados das colunas necessárias, podemos usar o quadro de dados do pandas e ele obterá o quadro de dados de 20 classifica que tem os melhores filmes na página 1.

data = pd.DataFrame(response.json()["resultados"])[['Eu iria','título','visão global','popularidade','data de lançamento','vote_average','vote_count']]

Queremos os dados do 428 páginas inteiras, então colocaremos o código no loop for e solicitaremos o site repetidamente para páginas diferentes e, a cada vez, obteremos 20 linhas e sete colunas.

para eu no alcance(1, 429):
    resposta = solicitações.get("https://api.themoviedb.org/3/movie/top_rated?api_key =<Chave API>&idioma = en-US&page ={}".formato(eu))
    temp_df = pd.DataFrame(response.json()["resultados"])[['Eu iria','título','visão global','popularidade','data de lançamento','vote_average','vote_count']]
    data.append(temp_df, ignore_index = False)

Portanto, temos o quadro de dados completo com 8551 filas. formatamos um número de página para solicitar uma página diferente a cada vez. E mencione sua chave de API no link removendo a tag HTML. Vai demorar pelo menos 2 minutos para correr. O quadro de dados que obtivemos é parecido com este.

74331top_movies_dataframe-2414428

Salve os dados em um arquivo CSV para que você possa usá-lo para analisar, processar e criar um projeto nele.

Obtenha dados de um banco de dados SQL

Trabalhar com bancos de dados SQL é fácil com Python. Python fornece várias bibliotecas para se conectar ao banco de dados e ler consultas SQL e extrair dados da tabela SQL para o Pandas Dataframe.

Para fins de demonstração, estamos usando um conjunto de dados populacionais de distritos e cidades do mundo carregado no Kaggle em formato de consulta SQL. Você pode acessar o conjunto de dados de aqui.

Baixe o arquivo e envie-o para seu banco de dados local. Você pode usar MySQL, XAMPP, SQLite ou qualquer banco de dados de sua escolha. TODOS os bancos de dados oferecem opção de importação, apenas clique nele, selecione o arquivo baixado e carregue-o.

Agora estamos prontos para conectar o Python ao banco de dados e extrair os dados SQL para o Dataframe do Pandas. Para fazer uma conexão, instalar biblioteca de conectores MySQL.

!pip install mysql.connector

Depois de instalar, importe as bibliotecas necessárias e direcione a conexão ao banco de dados usando o método de conexão.

importar numpy como np
importar pandas como pd
import mysql.connector
conn = mysql.connector.connect(host ="localhost", usuário ="raiz", senha ="", banco de dados ="Mundo")

Depois de conectar com o banco de dados com sucesso, podemos consultar um banco de dados e extrair dados em um quadro de dados.

city_data = pd.read_sql_query("SELECIONE * DA cidade", con)
18145city20data20df-3220110

Portanto, extraímos os dados para o dataframe com sucesso e é fácil trabalhar com bancos de dados com a ajuda de python. Você também pode extrair dados filtrando com consultas SQL.

EndNote

Espero que tenha sido um artigo incrível que o ajude a aprender como extrair dados de diferentes fontes. A obtenção de dados com a ajuda da API é usada principalmente pelo Data Scientist para coletar dados do grande e vasto conjunto de dados para uma melhor análise e melhor desempenho do modelo..

Como um iniciante, na maioria das vezes você obtém o arquivo de dados preciso, mas este não é o caso o tempo todo, você precisa trazer os dados de diferentes fontes que serão barulhentos e trabalhar neles para tomar melhores decisões de negócios.

A mídia mostrada neste artigo não é propriedade da DataPeaker e é usada a critério do autor.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.