From c57efffe01bdc29e08b5eaa1a9b7071336bd4bb1 Mon Sep 17 00:00:00 2001 From: Marcelo Glezer Date: Thu, 15 Jan 2015 09:36:59 -0300 Subject: extracted server_copy_response to common --- libmproxy/console/common.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'libmproxy/console/common.py') diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py index 3e6e5ccc..3ba89f8e 100644 --- a/libmproxy/console/common.py +++ b/libmproxy/console/common.py @@ -3,7 +3,10 @@ import urwid import urwid.util from .. import utils from ..protocol.http import CONTENT_MISSING - +try: + import pyperclip +except: + pyperclip = False VIEW_LIST = 0 VIEW_FLOW = 1 @@ -161,6 +164,21 @@ def raw_format_flow(f, focus, extended, padding): pile.append(urwid.Columns(resp, dividechars=1)) return urwid.Pile(pile) +def server_copy_response( k, response, statusbar): + if pyperclip: + if k == "c": + try: + pyperclip.copy(response.get_decoded_content()) + except TypeError: + statusbar.message("Content is binary or can be converted to text") + elif k == "h": + try: + pyperclip.copy(str(response.headers)) + except TypeError: + statusbar.message("Error converting headers to text") + else: + statusbar.message("No clipboard support on your system, sorry.") + class FlowCache: @utils.LRUCache(200) -- cgit v1.2.3