From 27996ca0d4c2efa6624599d6a65316a68ea7173b Mon Sep 17 00:00:00 2001 From: John Schember Date: Sat, 5 Mar 2011 16:34:30 -0500 Subject: [PATCH] Untested. Set proxy for web control. --- src/calibre/gui2/store/web_control.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/store/web_control.py b/src/calibre/gui2/store/web_control.py index 295fde8b37..45396c6637 100644 --- a/src/calibre/gui2/store/web_control.py +++ b/src/calibre/gui2/store/web_control.py @@ -6,11 +6,12 @@ __docformat__ = 'restructuredtext en' import os from cookielib import Cookie, CookieJar +from urlparse import urlparse from PyQt4.Qt import QWebView, QWebPage, QNetworkCookieJar, QNetworkRequest, QString, \ - QFileDialog + QFileDialog, QNetworkProxy -from calibre import USER_AGENT, browser +from calibre import USER_AGENT, browser, get_proxies from calibre.ebooks import BOOK_EXTENSIONS class NPWebView(QWebView): @@ -22,6 +23,18 @@ class NPWebView(QWebView): self.setPage(NPWebPage()) self.page().networkAccessManager().setCookieJar(QNetworkCookieJar()) + + http_proxy = get_proxies().get('http', None) + if http_proxy: + proxy_parts = urlparse(http_proxy) + proxy = QNetworkProxy() + proxy.setType(QNetworkProxy.HttpProxy) + proxy.setUser(proxy_parts.username) + proxy.setPassword(proxy_parts.password) + proxy.setHostName(proxy_parts.hostname) + proxy.setPort(proxy_parts.port) + self.page().networkAccessManager().setProxy(proxy) + self.page().setForwardUnsupportedContent(True) self.page().unsupportedContent.connect(self.start_download) self.page().downloadRequested.connect(self.start_download)