#6 Airflow avancé - Conclusion et Evaluation - Test Tâche 2

Bonjour tout le monde,
Quand je tente de tester la tâche 2 avec le code de la fonction donné sur la plateforme :
import os

import pandas as pd

import json

def transform_data_into_csv(n_files=None, filename=‹ data.csv ›):

parent_folder = 'app/raw_files'

files = sorted(os.listdir(parent_folder), reverse=True)

if n_files:

    files = files[:n_files]

     

dfs = []

for f in files:

    with open(os.path.join(parent_folder, f), 'r') as file:

        data_temp = json.load(file)

    for data_city in data_temp:

        dfs.append(

            {

                'temperature': data_city['main']['temp'],

                'city': data_city['name'],

                'pression': data_city['main']['pressure'],

                'date': f.split('.')[0]

            }

        )



df = pd.DataFrame(dfs)

print('\n', df.head(10))

df.to_csv(os.path.join('app/clean_data', filename), index=False)

transform_data_into_csv(n_files=20, filename=‹ data.csv ›)

J’obtiens le message d’erreur suivant :
json.decoder.JSONDecodeError : Extra date: line 1 column 487 (char 486)

Est-ce que quelqu’un peut m’aider, svp ?

Merci d’avance.

Merci @2883 qui m’a répondu ceci :
Bonsoir Stève,

J’ai eu aussi ce problème… C’est dans dans la phase de téléchargement des données tu écris plusieurs fois dans le même fichier… Du coup ton fichier comporte plusieurs chaine JSON et pas un JSON global.
Est-ce que tu vois ce que je veux dire ?

A+

J’ai ajouté une pause de 2s entre chaque récolte pour enregistrer sous un nom de fichier différent.
J’obtient ce genre de contenu dans les fichiers ‹ .json ›:

et ce genre de message d’erreur concernant l’indice :
image

Avez-vous déjà rencontré ce problème ?

Merci d’avance.

parfait ! Bonne journée à vous