Use click to provide CLI arguments

This commit is contained in:
2022-04-07 12:55:12 +02:00
parent 5cf265f09c
commit 338e1adc21
3 changed files with 317 additions and 34 deletions

View File

@ -8,6 +8,7 @@ from durations import Duration
import os
import frontmatter
import csv
import click
filtered = dict()
fields = {
@ -25,14 +26,27 @@ fields = {
}
def convert(directory="f", outputfile="test.csv"):
if not os.path.isdir(directory):
exit(f"The directory {directory} does not exist!")
with open(outputfile, "w", newline="") as csvfile:
@click.command()
@click.option(
"--input-directory",
"-i",
help="Directory with files that have frontmatter.",
prompt="Input directory",
)
@click.option(
"--output-file",
"-o",
default="output.csv",
help="The output CSV file.",
)
def convert(input_directory, output_file):
if not os.path.isdir(input_directory):
exit(f"The directory {input_directory} does not exist!")
with open(output_file, "w", newline="") as csvfile:
writer = csv.DictWriter(csvfile, fieldnames=fields.values())
writer.writeheader()
for filename in os.listdir(directory):
f = os.path.join(directory, filename)
for filename in os.listdir(input_directory):
f = os.path.join(input_directory, filename)
if os.path.isfile(f):
article = frontmatter.load(f)