From 0ac9ac2e159ef57e88dce6ca577ed44bda9faae5 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 28 Feb 2017 23:56:24 +0530 Subject: [PATCH] DRYer --- src/calibre/utils/browser.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/calibre/utils/browser.py b/src/calibre/utils/browser.py index 06c130b1da..2519b0ee1f 100644 --- a/src/calibre/utils/browser.py +++ b/src/calibre/utils/browser.py @@ -53,19 +53,23 @@ class Browser(B): def https_handler(self): return self._ua_handlers['https'] + def set_current_header(self, header, value): + found = False + q = header.lower() + for i, (k, v) in enumerate(tuple(self.addheaders)): + if k.lower() == q: + self.addheaders[i] = value + found = True + if not found: + self.addheaders.append((header, value)) + def current_user_agent(self): for k, v in self.addheaders: if k.lower() == 'user-agent': return v - def change_user_agent(self, newval): - found = False - for i, (k, v) in enumerate(tuple(self.addheaders)): - if k.lower() == 'user-agent': - self.addheaders[i] = newval - found = True - if not found: - self.addheaders.append(('User-agent', newval)) + def set_user_agent(self, newval): + self.set_current_header('User-agent', newval) def set_handle_refresh(self, *args, **kwargs): B.set_handle_refresh(self, *args, **kwargs)