Skip to content

Instantly share code, notes, and snippets.

@dunkfordyce
Created February 6, 2010 14:49
Show Gist options
  • Save dunkfordyce/296748 to your computer and use it in GitHub Desktop.
Save dunkfordyce/296748 to your computer and use it in GitHub Desktop.
"""
simple script to merge multiple har files
usage: python merge_har.py out.har mylogs/*.har
"""
import simplejson
import sys
def merge(out_fn, in_files):
merged_log = {
'version': '1.1',
'creator': {
'name': 'merge_har',
'version': '0.1',
},
'pages': [],
'entries': [],
}
for fn in in_files:
log = simplejson.loads(open(fn).read())['log']
# copy in the browser data from the first file we read
if 'browser' not in merged_log:
merged_log['browser'] = log['browser']
merged_log['pages'].extend(log['pages'])
merged_log['entries'].extend(log['entries'])
open(out_fn, 'w').write(simplejson.dumps({'log': merged_log}, indent=4, sort_keys=True))
if __name__ == '__main__':
merge(sys.argv[1], sys.argv[2:])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment