summaryrefslogtreecommitdiff
path: root/inversion/categories_to_json.py
diff options
context:
space:
mode:
Diffstat (limited to 'inversion/categories_to_json.py')
-rw-r--r--inversion/categories_to_json.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/inversion/categories_to_json.py b/inversion/categories_to_json.py
new file mode 100644
index 0000000..4931fdc
--- /dev/null
+++ b/inversion/categories_to_json.py
@@ -0,0 +1,31 @@
+import os
+import sys
+import json
+
+if len(sys.argv) < 2:
+ sys.exit('usage: categories_to_json.py infile.txt')
+
+in_fn = sys.argv[1]
+
+with open(in_fn, "r") as f:
+ groups = f.read().lower().split("\n\n")
+data = {}
+for g in groups:
+ lines = g.split("\n")
+ title = lines[0].lower()
+ group = {}
+ for line in lines[1:]:
+ partz = line.split(") ")
+ if len(partz) < 2:
+ continue
+ klass = int(partz[0])
+ label = partz[1].strip()
+ if len(partz) > 2:
+ print(line)
+ group[label] = klass
+ data[title] = group
+
+name, ext = os.path.splitext(in_fn)
+out_fn = name + '.json'
+with open(out_fn, 'w') as outfile:
+ json.dump(data, outfile, sort_keys=True, indent=2)