Boa tarde, ao executar o passo de importar a classe Dados, o terminal retornou os seguintes erros:
Não identifiquei o erro de sintaxe, poderiam me ajudar? Segui algumas orientações que encontrei neste forum, mas sem sucesso.
import json
import csv
import sys
sys.path.append ('scripts/processamento_dados.py')
from processamento_dados import Dados
#Função Json
def leitura_json(path_json):
dados_json = []
with open(path_json, 'r') as file:
dados_json = json.load(file)
return dados_json
#Função CSV
def leitura_csv(path_csv):
dados_csv = []
with open(path_csv, 'r') as file:
spamreader = csv.DictReader(file, delimiter=',') #DictReader trás os dados em formato de Dicionário, o comando Reader mantinha o formato list
for row in spamreader:
dados_csv.append(row)
return dados_csv
def leitura_dados(path, tipo_arquivo):
dados = []
if tipo_arquivo == 'csv':
dados = leitura_csv(path)
elif tipo_arquivo == 'json':
dados = leitura_json(path)
return dados
def get_comlumns(dados):
return list (dados[-1].keys())
def rename_columns(dados, key_mapping):
new_dados_csv = []
for old_dict in dados:
dict_temp = {}
for old_key, value in old_dict.items():
dict_temp[key_mapping[old_key]] = value
new_dados_csv.append(dict_temp)
return new_dados_csv
def size_data(dados):
return len(dados)
def join(dadosA, dadosB):
combined_list = []
combined_list.extend(dadosA)
combined_list.extend(dadosB)
return combined_list
def transformando_dados_tabela(dados, nomes_colunas):
dados_combinados_tabela = [nomes_colunas]
for row in dados:
linha = []
for coluna in nomes_colunas:
linha.append(row.get(coluna, 'Indisponível'))
dados_combinados_tabela.append(linha)
return dados_combinados_tabela
def salvando_dados(dados, path):
with open(path, 'w') as file:
writer = csv.writer(file)
writer.writerows(dados)
path_json = 'data_raw/dados_empresaA.json'
path_csv = 'data_raw/dados_empresaB.csv'
dados_empresaA = Dados(path_json, 'json')
print(dados_empresaA)
# #Iniciando a leitura
# dados_json = leitura_dados(path_json, 'json')
# nome_colunas_json = get_comlumns(dados_json)
# tamanho_dados_json = size_data(dados_json)
# print(f"Nome colunas dados json: {nome_colunas_json}")
# print(f"Tamanho dos dados json: {tamanho_dados_json}")
# dados_csv = leitura_dados(path_csv, 'csv')
# nome_colunas_csv = get_comlumns(dados_csv)
# tamanho_dados_csv = size_data(dados_csv)
# print(nome_colunas_csv)
# print(f"Tamanho dos dados csv: {tamanho_dados_csv}")
# #Transformação dos dados
# key_mapping = {'Nome do Item': 'Nome do Produto',
# 'Classificação do Produto' : 'Categoria do Produto',
# 'Valor em Reais (R$)' : 'Preço do Produto (R$)',
# 'Quantidade em Estoque' : 'Quantidade em Estoque',
# 'Nome da Loja' : 'Filial',
# 'Data da Venda' : 'Data da Venda'}
# dados_csv = rename_columns(dados_csv, key_mapping)
# nome_colunas_csv = get_comlumns(dados_csv)
# print(nome_colunas_csv)
# dados_fusao = join(dados_json, dados_csv)
# nome_colunas_fusao = get_comlumns(dados_fusao)
# tamanho_dados_fusao = size_data(dados_fusao)
# print(nome_colunas_fusao)
# print(tamanho_dados_fusao)
# #Salvando os dados
# dados_fusao_tabela = transformando_dados_tabela(dados_fusao, nome_colunas_fusao)
# path_dados_combinados = 'data_processed/dados_combinados.csv'
# salvando_dados(dados_fusao_tabela, path_dados_combinados)
# print (path_dados_combinados)