Skip to content

Desafio -> **Explorando IA Generativa em um Pipeline de ETL com Python**

Notifications You must be signed in to change notification settings

Fab-Moraes/SantanderDevWeek2023

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

SantanderDevWeek2023

Desafio -> Explorando IA Generativa em um Pipeline de ETL com Python

EXTRAÇÃO

Esse código Python parece realizar algumas operações envolvendo uma API e um arquivo CSV. Vou explicar o código passo a passo:

Importando Bibliotecas:

sdw2023_api_url = 'https://sdw-2023-prd.up.railway.app' Define uma variável sdw2023_api_url com o valor 'https://sdw-2023-prd.up.railway.app'. É a URL base para uma API.

import pandas as pd

Importa a biblioteca pandas e a renomeia como pd. O pandas é amplamente utilizado para trabalhar com dados tabulares.

Lendo um Arquivo CSV:

df = pd.read_csv('SDW2023.csv') Carrega um arquivo CSV chamado 'SDW2023.csv' em um DataFrame do Pandas, que é essencialmente uma tabela de dados.

user_ids = df['UserID'].tolist() Obtém a coluna 'UserID' do DataFrame df e a converte em uma lista de valores. Isso cria uma lista chamada user_ids contendo os IDs de usuário.

Realizando Requisições HTTP:

import requests import json Importa as bibliotecas requests para fazer requisições HTTP e json para trabalhar com dados JSON.

def get_user(id): response = requests.get(f'{sdw2023_api_url}/users/{id}') return response.json() if response.status_code == 200 else None

Define uma função chamada get_user(id) que recebe um id como argumento. Dentro da função, ela faz uma requisição HTTP GET para a URL da API com o ID do usuário fornecido. Se a resposta da requisição tiver um código de status 200 (OK), a função retorna o conteúdo da resposta como um objeto JSON; caso contrário, retorna None.

Processando os Usuários:

users = [user for id in user_ids if (user := get_user(id)) is not None] Usa uma compreensão de lista para iterar pelos IDs de usuário em user_ids. Para cada ID de usuário, chama a função get_user(id) para obter os detalhes do usuário correspondente da API. Se a função get_user retornar um objeto JSON (ou seja, não for None), ele é adicionado à lista users.

Imprimindo os Resultados em Formato JSON:

print(json.dumps(users, indent=2)) Converte a lista users em uma representação JSON formatada com recuo de 2 espaços e a imprime na saída padrão.

Em resumo, este código lê um arquivo CSV contendo IDs de usuário, faz solicitações à API usando esses IDs para obter detalhes de usuário e, em seguida, imprime os detalhes dos usuários em formato JSON. Os usuários cujos detalhes não podem ser obtidos da API são ignorados.

About

Desafio -> **Explorando IA Generativa em um Pipeline de ETL com Python**

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published