mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
proxy patch from richard
This commit is contained in:
parent
e78689fe35
commit
33b3c65ad8
1 changed files with 36 additions and 9 deletions
|
@ -2751,18 +2751,45 @@ Consider backing up your media directory first."""))
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
||||||
def setupProxy(self):
|
def setupProxy(self):
|
||||||
from PyQt4.QtNetwork import QNetworkProxy
|
from PyQt4.QtNetwork import QNetworkProxy, QNetworkProxyFactory, QNetworkProxyQuery
|
||||||
|
|
||||||
|
class MyQNetworkProxyFactory(QNetworkProxyFactory):
|
||||||
|
def __init__(self, host, port, user, password):
|
||||||
|
QNetworkProxyFactory.__init__(self)
|
||||||
|
self.host=host
|
||||||
|
self.port=port
|
||||||
|
self.user=user
|
||||||
|
self.password=password
|
||||||
|
|
||||||
|
def makeProxy(self, proxyType):
|
||||||
|
proxy = QNetworkProxy()
|
||||||
|
proxy.setType(proxyType)
|
||||||
|
proxy.setHostName(self.host)
|
||||||
|
proxy.setPort(self.port)
|
||||||
|
if self.user:
|
||||||
|
proxy.setUser(self.user)
|
||||||
|
proxy.setPassword(self.password)
|
||||||
|
return proxy
|
||||||
|
|
||||||
|
def queryProxy(self, proxyQuery):
|
||||||
|
proxyList = []
|
||||||
|
if self.host:
|
||||||
|
proxyList.append(self.makeProxy(QNetworkProxy.HttpProxy))
|
||||||
|
proxyList.append(self.makeProxy(QNetworkProxy.HttpCachingProxy))
|
||||||
|
proxyList += QNetworkProxyFactory.systemProxyForQuery(proxyQuery)
|
||||||
|
return proxyList
|
||||||
|
|
||||||
import urllib2
|
import urllib2
|
||||||
if self.config['proxyHost']:
|
if self.config['proxyHost']:
|
||||||
# qt
|
# qt
|
||||||
proxy = QNetworkProxy()
|
QNetworkProxyFactory.setApplicationProxyFactory(
|
||||||
proxy.setType(QNetworkProxy.HttpProxy)
|
MyQNetworkProxyFactory(
|
||||||
proxy.setHostName(self.config['proxyHost'])
|
self.config['proxyHost'],
|
||||||
proxy.setPort(self.config['proxyPort'])
|
self.config['proxyPort'],
|
||||||
if self.config['proxyUser']:
|
self.config['proxyUser'],
|
||||||
proxy.setUser(self.config['proxyUser'])
|
self.config['proxyPass']
|
||||||
proxy.setPassword(self.config['proxyPass'])
|
)
|
||||||
QNetworkProxy.setApplicationProxy(proxy)
|
)
|
||||||
# python
|
# python
|
||||||
proxy = "http://"
|
proxy = "http://"
|
||||||
if self.config['proxyUser']:
|
if self.config['proxyUser']:
|
||||||
|
|
Loading…
Reference in a new issue