From 76a7300f328b1c9bc37b371017ce45e74373d88b Mon Sep 17 00:00:00 2001 From: Dafydd Harries Date: Wed, 20 Mar 2013 21:15:04 -0400 Subject: add json_to_wiki.py script --- export.py | 7 +++++-- json_to_wiki.py | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 json_to_wiki.py diff --git a/export.py b/export.py index c891cc3..7f9ca24 100644 --- a/export.py +++ b/export.py @@ -58,6 +58,9 @@ class PkgData(object): self.licenses = cp_store['licenses'] cp_store.close() +def nouni(s): + return s.encode('utf8') if isinstance(s, unicode) else s + class Template(object): def __init__(self, name, values): self.name = name @@ -65,9 +68,9 @@ class Template(object): def __str__(self): return '{{%s\n%s\n}}' % ( - self.name, + nouni(self.name), '\n'.join(['|' + '%s=%s' % - (n, v.encode('utf8') if isinstance(v, unicode) else v) + (nouni(n), nouni(v)) for (n, v) in self.values])) def parse_tags(s): diff --git a/json_to_wiki.py b/json_to_wiki.py new file mode 100644 index 0000000..b62d320 --- /dev/null +++ b/json_to_wiki.py @@ -0,0 +1,26 @@ + +import json +import sys + +import export + +def main(): + everything = json.load(sys.stdin) + + def _export(): + for (name, valuess) in everything.iteritems(): + print name + templates = [] + + for (tname, values) in valuess: + template = export.Template( + tname.decode('utf8'), values.items()) + templates.append(template) + + yield (name, templates) + + export.output_multi('converted', _export()) + +if __name__ == '__main__': + main() + -- cgit v1.2.3