# HG changeset patch # User Björn Ricks # Date 1411738618 -7200 # Node ID c04edbd5296774207d25fc01373d9d8ddd03531d # Parent 7f546e8a6e7a83d703c0f008fcbaf742f694d5f3 Allow castclient to do template variable substition via a json file diff -r 7f546e8a6e7a -r c04edbd52967 castclient.py --- a/castclient.py Fri Sep 26 15:36:30 2014 +0200 +++ b/castclient.py Fri Sep 26 15:36:58 2014 +0200 @@ -6,8 +6,6 @@ import requests -url = "http://127.0.0.1:5000/convert/" - def main(): usage = "usage: %prog [options] infile outfile" @@ -15,13 +13,19 @@ parser.add_option("-f", "--format", default="pdf") parser.add_option("-s", "--host", default="localhost") parser.add_option("-p", "--port", default="5000") + parser.add_option("--json", dest="json", metavar="FILE") (options, args) = parser.parse_args() if len(args) < 2: parser.print_usage() sys.exit(1) - url = "http://%s:%s/convert/" % (options.host, options.port) + if options.json: + service = "template" + else: + service = "convert" + + url = "http://%s:%s/%s/" % (options.host, options.port, service) infilename = args[0] outfilename = args[1] format = options.format @@ -29,6 +33,10 @@ files = {'file': open(infilename, 'rb')} data = {'format': format} + if options.json: + with open(options.json, "r") as f: + data["datadict"] = f.read() + r = requests.post(url, data=data, files=files) if r.status_code == 200: @@ -38,6 +46,7 @@ else: print "An error has occured" print r.status_code, r.headers + print r.text sys.exit(2)