Application web de gestion de données

a marqué ce sujet comme résolu.

Bonjour à tous,

Après plusieurs heures de recherche, je comptais faire un programme sous python lisant un fichier texte et faire une conversion des données au format JSON. Cependant j’aurais besoin de votre recul pour savoir comment je devrais m’y prendre dans mes recherches et comment vous imaginez le fonctionnement du programme envisagé. Pourriez-vous me guider dans ce que je devrais faire s’il vous plaît ?

Voici l’énoncé:

La tâche d’évaluation consiste à développer une application web pour afficher des données interactives sur les métocéans. L’utilisateur final serait un professionnel de la marine qui prendrait des décisions en fonction de la météo. Les données sont fourni sous forme de fichier texte ASCII de variables metocean - metocean.txt. Une base de données dorsale n’est n’est pas obligatoire mais peut être utilisé si vous le souhaitez. Critères d’évaluation

  1. Une API dorsale bien définie. PHP et Laravel ne sont pas nécessaires, mais c’est ce que nous utilisons.

  2. Bonne sélection et utilisation des bibliothèques / cadres existants.

  3. Seules les bibliothèques open source sont utilisées.

  4. Utilisation de tableaux de données / SVG / d3.js ou d’autres technologies de visualisation.

  5. Affichage interactif des données pour faciliter l’interprétation et la prise de décision. Vue.js n’est pas mais c’est ce que nous utilisons chez LumiateOne.

  6. Une bonne gestion du temps.

  7. Des notes écrites et raisonnées.

Aperçu du document metocean.txt :

Merci pour vos retours.

+0 -0

Bonjour, qu’est-ce que tu as essayé, et où est-ce que tu bloques ?

D’autre part, quel est le contexte de ta question ? En l’état on dirait un gros projet étudiant, mais ça n’est pas très clair.

SpaceFox

Voici le serveur python 3.8 en cours :

from flask import Flask, render_template, request, jsonify
import json

columns = 'Time[UTC+0.0]    lev[m]  hs[m]   hx[m]   tp[s]   tm01[s] tm02[s] dp[deg] dpm[deg]    hs_sw1[m]   hs_sw8[m]   tp_sw1[s]   tp_sw8[s]   dpm_sw8[deg]    dpm_sw1[deg]    hs_sea8[m]  hs_sea[m]   tp_sea8[s]  tp_sea[s]   tm_sea[s]   dpm_sea8[deg]   dpm_sea[deg]    hs_ig[m]    hs_fig[m]   wsp[kts]    gst[kts]    wd[deg] wsp100[kts] wsp50[kts]  wsp80[kts]  precip[mm/hr]   tmp[C]  rh[%]   vis[km] cld[%]  cb[m]   csp0[kts]   cd0[deg]    ss[m]   sst[C]'.split(']')
f = open('data.json').read()
jsonObject = json.loads(f)
app = Flask(__name__)


#=====================
#redirection localhost:PORT
@app.route('/')
@app.route('/index', methods=['GET'])
def index():
    return '<h1>Hello World</h1>'

#redirection localhost:PORT
@app.route('/dashboard/<url>')
def dashboard(url=None):
    return render_template(url)

@app.route('/recvJSON', methods=['POST'])
def recv():
    data = request.get_json()
    print(data)
    return jsonify(jsonObject)

#===================== 

app.run(host='0.0.0.0', port=8089, debug=True)

J’ai créé un autre fichier python de test pour pouvoir traiter les données dans le fichier txt.

text = open('metocean.txt').read()

text = text.replace(' ', '|')
text = text.replace('  ', '|')
text = text.replace('   ', '|')
text = text.replace('    ', '|')
text = text.replace('     ', '|')

text = text.split('\n')
for t in range(len(text)):
    text[t] = text[t].split('|')

print(text[7])

Tout d’abord je bloque dans mes recherches je ne sais pas qu’est-ce que je dois chercher par rapport à la conversion des données du fichier .txt en format JSON. Ce projet est un exercice type entrainement pour la recherche d’emploi dans le developpement web. Cependant le développement d’une API m’est totalement nouveau.

Ma question est : Mon raisonnement de départ est-il bon, si cela n’est pas le cas, que me suggeriez-vous ?

Je me suis rendu compte que je devrais prévoir d’autre fichier texte contenant des données de métocean.

Voici ce que je tente de faire, je voudrais rajouter une condition au programme permettant de lire le fichier texte ligne par ligne s’il y a la date avec ce format : YYYY-MM-DD en premier et donc utiliser ensuite la fonction split() pour avoir des données au format JSON.

f = open("metocean.txt", "r")
count = 1

while True: 
    count += 1
  
    # Get next line from file 
    line = f.readline() 
    # Define date format
    timeFormat = date(line).isoformat()
    # if line is empty 
    # end of file is reached 
    if not line: 
        break
    print("Line {}: {}".format(count, line.split())) 
  
f.close()
+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte