From 43a903bc726e7de36e18e0bb53b2df4c2c443e5f Mon Sep 17 00:00:00 2001 From: Michael Murtaugh Date: Thu, 23 Jul 2015 15:14:06 +0200 Subject: [PATCH] added separate createDiffHTML script --- .gitignore | 2 ++ createDiffHTML.py | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100755 createDiffHTML.py diff --git a/.gitignore b/.gitignore index 145af20..615df7b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ sites/ *.pyc *~ padinfo.json +*.json +!padinfo.sample.json \ No newline at end of file diff --git a/createDiffHTML.py b/createDiffHTML.py new file mode 100755 index 0000000..2ae417a --- /dev/null +++ b/createDiffHTML.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python + +from argparse import ArgumentParser +import json +from urllib import urlencode +from urllib2 import urlopen, HTTPError, URLError + +p = ArgumentParser("") +p.add_argument("padid") +p.add_argument("--startrev", type=int, default=0, help="starting revision") +p.add_argument("--endrev", type=int, default=None, help="ending revision, default: last") +p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") +p.add_argument("--protocol", default="http") +p.add_argument("--showurl", default=False, action="store_true") +args = p.parse_args() + +with open(args.padinfo) as f: + info = json.load(f) +if "protocol" not in info: + info['protocol'] = args.protocol +if "port" not in info: + info['port'] = 9001 + +apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) +data = {} +data['apikey'] = info['apikey'] +data['padID'] = args.padid.encode("utf-8") +data['startRev'] = "{0}".format(args.startrev) +if args.endrev != None: + data['endRev'] = "{0}".format(args.endrev) +requesturl = apiurl+'createDiffHTML?'+urlencode(data) +if args.showurl: + print requesturl +else: + print json.load(urlopen(requesturl))['data']['html']