diff options
Diffstat (limited to 'docs/scripts')
-rwxr-xr-x | docs/scripts/filters.py | 4 | ||||
-rwxr-xr-x | docs/scripts/options.py | 53 |
2 files changed, 55 insertions, 2 deletions
diff --git a/docs/scripts/filters.py b/docs/scripts/filters.py index e61733a0..05cc7a0f 100755 --- a/docs/scripts/filters.py +++ b/docs/scripts/filters.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from mitmproxy import flowfilter @@ -6,4 +6,4 @@ from mitmproxy import flowfilter print("<table class=\"table filtertable\"><tbody>") for i in flowfilter.help: print("<tr><th>%s</th><td>%s</td></tr>" % i) -print("</tbody></table>")
\ No newline at end of file +print("</tbody></table>") diff --git a/docs/scripts/options.py b/docs/scripts/options.py new file mode 100755 index 00000000..ff7d0f7f --- /dev/null +++ b/docs/scripts/options.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python3 + +from mitmproxy import options, optmanager +from mitmproxy.tools import dump, console, web + +masters = { + "mitmproxy": console.master.ConsoleMaster, + "mitmdump": dump.DumpMaster, + "mitmweb": web.master.WebMaster +} + +unified_options = {} + +for tool_name, master in masters.items(): + opts = options.Options() + inst = master(opts) + for key, option in optmanager.dump_dicts(opts).items(): + if key in unified_options: + unified_options[key]['tools'].append(tool_name) + else: + unified_options[key] = option + unified_options[key]['tools'] = [tool_name] + +print(""" + <table class=\"table optiontable\"> + <thead> + <tr> + <th>Name</th> + <th>Type</th> + <th>Description</th> + </tr> + </thead> + <tbody> + """.strip()) +for key, option in sorted(unified_options.items(), key=lambda t: t[0]): + print(""" + <tr> + <th>{}<br/>{}</th> + <td>{}</td> + <td>{}<br/> + Default: {} + {} + </td> + </tr> + """.strip().format( + key, + ' '.join(["<span class='badge'>{}</span>".format(t) for t in option['tools']]), + option['type'], + option['help'], + option['default'], + "<br/>Choices: {}".format(', '.join(option['choices'])) if option['choices'] else "", + )) +print("</tbody></table>") |