#!/usr/bin/env python3 import json import select import sys import urllib.parse def main(args=(), stdin=()): for arg in args: print(parse(arg)) for line in stdin: print(parse(line)) def parse(params): qs = urllib.parse.parse_qs(params.strip(), keep_blank_values=True) obj = {} for key, value in qs.items(): obj[key] = value[0] if len(value) == 1 else value return json.dumps(obj) def get_stdin(): found = select.select((sys.stdin,), (), (), 0.0)[0] return found[0] if found else () if __name__ == "__main__": main(sys.argv[1:], get_stdin())