From 3d84c774c225d0ef1b1030adc596444b4faeb3e6 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 10 Jul 2026 13:42:48 +0900 Subject: [PATCH 1/5] add tasks.json --- .vscode/tasks.json | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .vscode/tasks.json diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 00000000000..5fb164673e2 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,27 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Launch proxy", + "type": "process", + "command": "${workspaceFolder}/venv/bin/mitmproxy", + "windows": { + "command": "${workspaceFolder}/venv/Scripts/mitmproxy.exe" + }, + "args": [ + "-s scripts/proxy_lp.py" + ], + "isBackground": true, + "presentation": { + "reveal": "always", + "panel": "dedicated" + }, + "problemMatcher": [], + "detail": "mitmproxy -s scripts/proxy_lp.py", + "runOptions": { + "instanceLimit": 1, + "instancePolicy": "terminateOldest" + } + } + ] +} From 5118115a5471bbf36b85993362b69499316fa7e8 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 10 Jul 2026 21:10:26 +0900 Subject: [PATCH 2/5] call mitmdump from python --- scripts/proxy_lp.py | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/scripts/proxy_lp.py b/scripts/proxy_lp.py index 6c2ce075ad6..b434ebb3fa7 100644 --- a/scripts/proxy_lp.py +++ b/scripts/proxy_lp.py @@ -1,5 +1,9 @@ +import asyncio + from http import HTTPStatus -from mitmproxy import http + +from mitmproxy import addons, http, master +from mitmproxy.addons import dumper, errorcheck, keepserving, readfile class LiquipediaMapper: @@ -41,4 +45,21 @@ def __serve_local_js_resource(self, flow: http.HTTPFlow): ) -addons = [LiquipediaMapper()] +async def main(): + m = master.Master() + m.addons.add( + *addons.default_addons(), + LiquipediaMapper(), + dumper.Dumper(), + keepserving.KeepServing(), + readfile.ReadFileStdin(), + errorcheck.ErrorCheck(), + ) + try: + await m.run() + except asyncio.CancelledError: + await m.done() + + +if __name__ == "__main__": + asyncio.run(main()) From 38ec7df9117b4d6b758635a01d39de9dfa137951 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 10 Jul 2026 21:16:32 +0900 Subject: [PATCH 3/5] adjust tasks.json --- .vscode/tasks.json | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 5fb164673e2..dc713679648 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -4,12 +4,9 @@ { "label": "Launch proxy", "type": "process", - "command": "${workspaceFolder}/venv/bin/mitmproxy", - "windows": { - "command": "${workspaceFolder}/venv/Scripts/mitmproxy.exe" - }, + "command": "${command:python.interpreterPath}", "args": [ - "-s scripts/proxy_lp.py" + "scripts${/}proxy_lp.py" ], "isBackground": true, "presentation": { @@ -17,7 +14,7 @@ "panel": "dedicated" }, "problemMatcher": [], - "detail": "mitmproxy -s scripts/proxy_lp.py", + "detail": "python3 scripts/proxy_lp.py", "runOptions": { "instanceLimit": 1, "instancePolicy": "terminateOldest" From d7268595415874a0611011028bbeb9b8110b7ae4 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 10 Jul 2026 21:18:09 +0900 Subject: [PATCH 4/5] pass in null option --- scripts/proxy_lp.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/proxy_lp.py b/scripts/proxy_lp.py index b434ebb3fa7..7ad85a82e6d 100644 --- a/scripts/proxy_lp.py +++ b/scripts/proxy_lp.py @@ -46,7 +46,7 @@ def __serve_local_js_resource(self, flow: http.HTTPFlow): async def main(): - m = master.Master() + m = master.Master(None) m.addons.add( *addons.default_addons(), LiquipediaMapper(), From 95f03d571cc825f8e6622b1ecf44879bfc9ad0ad Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Thu, 16 Jul 2026 14:24:47 +0900 Subject: [PATCH 5/5] maintain compat with mitmproxy --- scripts/proxy_lp.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/proxy_lp.py b/scripts/proxy_lp.py index 7ad85a82e6d..ce6d752f4a5 100644 --- a/scripts/proxy_lp.py +++ b/scripts/proxy_lp.py @@ -2,8 +2,8 @@ from http import HTTPStatus -from mitmproxy import addons, http, master -from mitmproxy.addons import dumper, errorcheck, keepserving, readfile +from mitmproxy import http, master +from mitmproxy.addons import default_addons, dumper, errorcheck, keepserving, readfile class LiquipediaMapper: @@ -48,7 +48,7 @@ def __serve_local_js_resource(self, flow: http.HTTPFlow): async def main(): m = master.Master(None) m.addons.add( - *addons.default_addons(), + *default_addons(), LiquipediaMapper(), dumper.Dumper(), keepserving.KeepServing(), @@ -63,3 +63,5 @@ async def main(): if __name__ == "__main__": asyncio.run(main()) +else: + addons = [LiquipediaMapper()]