rassemble les dates dans un groupe d'entrées
- respecte le modèle de données - permet ainsi l'applatissement ultérieur avec libellé - close #3
This commit is contained in:
parent
c9bc307711
commit
5b233db286
@ -5,28 +5,27 @@ import pathlib
|
|||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
"""
|
"""
|
||||||
ajoute une valeur de date lisible par un humain à chaque entrée d'un document JSON
|
ajoute une valeur de date lisible par un humain pour chaque entrée dans le JSON
|
||||||
|
|
||||||
TODO: rassembler les dates dans un groupe d'entrées
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def from_stamp(i: int) -> str:
|
|
||||||
"""normalise une date UNIX"""
|
|
||||||
dt = str(i)
|
|
||||||
if len(dt)>10:
|
|
||||||
dt = dt[:10]
|
|
||||||
sdt = str(datetime.datetime.fromtimestamp(int(dt)))
|
|
||||||
return sdt
|
|
||||||
|
|
||||||
def proc(path_in):
|
def proc(path_in):
|
||||||
"""traite un document JSON"""
|
"""traite un document JSON"""
|
||||||
|
|
||||||
|
def stamp2date(i: int) -> str:
|
||||||
|
"""normalise une date UNIX"""
|
||||||
|
dt = str(i)
|
||||||
|
if len(dt)>10: dt = dt[:10]
|
||||||
|
sdt = datetime.datetime.fromtimestamp(int(dt))
|
||||||
|
return str(sdt).replace(" ","_")
|
||||||
|
|
||||||
_json = None
|
_json = None
|
||||||
with open(path_in,'r') as f:
|
with open(path_in,'r') as f:
|
||||||
_json = json.load(f)
|
_json = json.load(f)
|
||||||
for group in _json:
|
ids = tuple(i.get("x") for i in _json[0]["data"])
|
||||||
for entry in group["data"]:
|
dates = [{"x": i,"y": stamp2date(i)} for i in ids]
|
||||||
entry.update({"date":from_stamp(entry["x"])})
|
dates_dict = {"name":"date_time", "data":[i for i in dates]}
|
||||||
|
_json.insert(0,dates_dict)
|
||||||
return _json
|
return _json
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
Loading…
Reference in New Issue
Block a user