2014-07-25 22:44:03 +00:00
|
|
|
# Usage: mitmdump -s "modify_response_body.py mitmproxy bananas"
|
2014-08-06 23:30:47 +00:00
|
|
|
# (this script works best with --anticache)
|
2014-07-25 22:44:03 +00:00
|
|
|
from libmproxy.protocol.http import decoded
|
|
|
|
|
|
|
|
|
|
|
|
def start(ctx, argv):
|
|
|
|
if len(argv) != 3:
|
2014-08-06 23:30:47 +00:00
|
|
|
raise ValueError('Usage: -s "modify-response-body.py old new"')
|
|
|
|
# You may want to use Python's argparse for more sophisticated argument parsing.
|
2014-08-03 00:39:41 +00:00
|
|
|
ctx.old, ctx.new = argv[1], argv[2]
|
2014-07-25 22:44:03 +00:00
|
|
|
|
|
|
|
|
|
|
|
def response(ctx, flow):
|
|
|
|
with decoded(flow.response): # automatically decode gzipped responses.
|
2014-08-03 00:39:41 +00:00
|
|
|
flow.response.content = flow.response.content.replace(ctx.old, ctx.new)
|