aboutsummaryrefslogtreecommitdiffstats
path: root/examples/simple/upsidedownternet.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-11-21 02:16:20 +0100
committerMaximilian Hils <git@maximilianhils.com>2016-11-21 02:28:10 +0100
commit9af8f4bb31c94a25780a4189bffa406906249626 (patch)
treecf52f1c312b7bac3d83d796d6b03bb33b4556f26 /examples/simple/upsidedownternet.py
parentf74e561524d04c93cd7953f34e78ebe67eaa58a8 (diff)
downloadmitmproxy-9af8f4bb31c94a25780a4189bffa406906249626.tar.gz
mitmproxy-9af8f4bb31c94a25780a4189bffa406906249626.tar.bz2
mitmproxy-9af8f4bb31c94a25780a4189bffa406906249626.zip
organize examples
This commit is largely based on work by Thiago Arrais (@thiagoarrais) and Shane Bradfield (@l33tLumberjack). I wasn't really able to get their PR reasonably merged onto the latest master, so I reapplied their changes manually here and did some further improvements on that.
Diffstat (limited to 'examples/simple/upsidedownternet.py')
-rw-r--r--examples/simple/upsidedownternet.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/examples/simple/upsidedownternet.py b/examples/simple/upsidedownternet.py
new file mode 100644
index 00000000..8ba450ab
--- /dev/null
+++ b/examples/simple/upsidedownternet.py
@@ -0,0 +1,16 @@
+"""
+This script rotates all images passing through the proxy by 180 degrees.
+"""
+import io
+
+from PIL import Image
+
+
+def response(flow):
+ if flow.response.headers.get("content-type", "").startswith("image"):
+ s = io.BytesIO(flow.response.content)
+ img = Image.open(s).rotate(180)
+ s2 = io.BytesIO()
+ img.save(s2, "png")
+ flow.response.content = s2.getvalue()
+ flow.response.headers["content-type"] = "image/png"