Skip to content
Snippets Groups Projects
loop_shp_append.py 1.2 KiB
Newer Older
#!/usr/bin/env python3

import datetime
import subprocess
from os import path
import os
import time
import glob
import shutil

initial_dir = os.getcwd()

for year in range(2011, 2017):
    my_path = path.join(initial_dir, str(year))
    os.chdir(my_path)

Lionel GUEZ's avatar
Lionel GUEZ committed
    # The first day of the year is the base, so there is nothing to
    # concatenate, we just copy it:
    for src in glob.iglob(f"{year}_01/{year}_01_01/*"):
        shutil.copy(src, os.curdir)

    my_date = datetime.date(year, 1, 2)
    final_date = datetime.date(year, 12, 31)
    t0 = time.perf_counter()

    with  open("perf_report.csv", "w") as perf_report:
        perf_report.write("elapsed time, in s\n")

        while my_date <= final_date:
            my_dir = my_date.strftime("%Y_%m/%Y_%m_%d")

            for filename in ["extremum", "max_speed_contour", 
                             "outermost_contour"]:
                from_file = path.join(my_dir, filename)

                for command in ["dbfcat", "shpcat"]:
                    subprocess.run([command, from_file, filename], check = True)

            t1 = time.perf_counter()
            perf_report.write(str(t1 - t0) + "\n")
            t0 = t1
            my_date += datetime.timedelta(1)