28 lines
850 B
Python
Executable File
28 lines
850 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
import json
|
|
import os
|
|
import sys
|
|
import csv
|
|
|
|
if __name__ == "__main__":
|
|
if len(sys.argv) != 2:
|
|
print('''%s [input directory]
|
|
Outputs result to stdout''' % (sys.argv[0]))
|
|
exit(1)
|
|
files=[]
|
|
info=[]
|
|
for (ignore, ignore, filenames) in os.walk(sys.argv[1]):
|
|
files.extend(filenames)
|
|
break
|
|
headings = list(csv.reader(open(os.path.join(sys.argv[1], files[0]), "r").readlines(), delimiter=",", quotechar='"'))[0]
|
|
for file in files:
|
|
current = csv.reader(open(os.path.join(sys.argv[1], file), "r").readlines()[1:], delimiter=",", quotechar='"')
|
|
for row in current:
|
|
rowInfo = {}
|
|
for i in range(len(headings)):
|
|
rowInfo[headings[i]] = row[i]
|
|
info.append(rowInfo)
|
|
sys.stdout.write(json.dumps(info))
|
|
|