From 66aff8d2a46f800348408a247a057b4fc8a883b5 Mon Sep 17 00:00:00 2001 From: madt1m Date: Sat, 30 Jun 2018 12:20:27 +0200 Subject: view can load from both io interfaces --- mitmproxy/addons/view.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/mitmproxy/addons/view.py b/mitmproxy/addons/view.py index 3730aa8d..25142a2c 100644 --- a/mitmproxy/addons/view.py +++ b/mitmproxy/addons/view.py @@ -447,9 +447,17 @@ class View(collections.Sequence): Load flows into the view, without processing them with addons. """ try: - dh = io.DbHandler(path) - for f in dh.load(): - self.add([f.copy()]) + if path.endswith(".sqlite"): + dh = io.DbHandler(path) + for f in dh.load(): + self.add([f.copy()]) + else: + with open(path, "rb") as f: + for i in io.FlowReader(f).stream(): + # Do this to get a new ID, so we can load the same file N times and + # get new flows each time. It would be more efficient to just have a + # .newid() method or something. + self.add([i.copy()]) except exceptions.TypeError as e: ctx.log.error(str(e)) except IOError as e: -- cgit v1.2.3