#!/usr/bin/env python

import sys
import json
from optparse import OptionParser

if __name__ == '__main__':
    parser = OptionParser()
    parser.add_option("-o", "--output", action="store",
                      help="Format to output, e.g. -o 'id,name,age,some_other_field'")
    parser.add_option("-r", "--root", action="store",
                      help="Root JSON object to refer to fields from, e.g. -r 'results'")
    (options, args) = parser.parse_args()

    jsonstr = sys.stdin.read()
    data = json.loads(jsonstr)

    # print options
    root_obj = data[options.root] if options.root else data
    # print root_obj

    headers = options.output.split(',')
    print options.output
    rows = [map(lambda header: str(values[header]), headers) for values in root_obj]
    for row in rows:
        print ','.join(row)