def new_network_request(self): if self.network_reply and not self.network_reply.isFinished(): self.network_reply.abort() if self.proxy_host_editor.text(): proxy = QtNetwork.QNetworkProxy( QtNetwork.QNetworkProxy.HttpProxy, self.proxy_host_editor.text(), int(str(self.proxy_port_editor.text()))) #, #self.proxy_username_editor.text(), #self.proxy_password_editor.text() ) self.manager.setProxy(proxy) else: self.manager.setProxy(QtNetwork.QNetworkProxy()) self.network_reply = self.manager.get( QtNetwork.QNetworkRequest(QtCore.QUrl('http://aws.amazon.com')))
def requestHandData(self, url, timeout=-1, proxyHostName=None, proxyPort=80, proxyUserName=None, proxyPassword=None, userAgent=None): # check what proxy to use if not proxyHostName and not self.proxy().hostName(): # no proxy set pass elif not proxyHostName and self.proxy().hostName(): # reset proxy to default self.setProxy(self.defaultProxy) elif proxyHostName == self.proxy().hostName(): # check if we have to create another proxy myProxy = self.proxy() if proxyPort != myProxy.port() or proxyUserName != myProxy.user( ) or proxyPassword != myProxy.password(): proxy = QtNetwork.QNetworkProxy() proxy.setType(proxy.HttpProxy) proxy.setHostName(proxyHostName) proxy.setPort(proxyPort) if proxyUserName: proxy.setUser(proxyUserName) if proxyPassword: proxy.setPassword(proxyPassword) self.setProxy(proxy) elif proxyHostName != self.proxy().hostName(): # create new proxy proxy = QtNetwork.QNetworkProxy() proxy.setType(proxy.HttpProxy) proxy.setHostName(proxyHostName) proxy.setPort(proxyPort) if proxyUserName: proxy.setUser(proxyUserName) if proxyPassword: proxy.setPassword(proxyPassword) self.setProxy(proxy) else: raise valueError('we should not have ended here!') if self._reply is not None: self._reply.abort() self._timer.stop() request = QtNetwork.QNetworkRequest(url) if userAgent is not None: request.setRawHeader('User-Agent', userAgent) self._reply = self.get(request) if timeout >= 0: self._timer.start(timeout)
def getNetworkProxyFromQgsSettings(self): """ get (QNetworkProxy) proxy from qgis options settings """ proxy = QtNetwork.QNetworkProxy() s = QSettings() proxyEnabled = s.value("proxy/proxyEnabled", "") proxyType = s.value("proxy/proxyType", "") proxyHost = s.value("proxy/proxyHost", "") proxyPort = s.value("proxy/proxyPort", "") proxyUser = s.value("proxy/proxyUser", "") proxyPassword = s.value("proxy/proxyPassword", "") if proxyEnabled == "true": # test if there are proxy settings if proxyType == "DefaultProxy": proxy.setType(QtNetwork.QNetworkProxy.DefaultProxy) elif proxyType == "Socks5Proxy": proxy.setType(QtNetwork.QNetworkProxy.Socks5Proxy) elif proxyType == "HttpProxy": proxy.setType(QtNetwork.QNetworkProxy.HttpProxy) elif proxyType == "HttpCachingProxy": proxy.setType(QtNetwork.QNetworkProxy.HttpCachingProxy) elif proxyType == "FtpCachingProxy": proxy.setType(QtNetwork.QNetworkProxy.FtpCachingProxy) proxy.setHostName(proxyHost) proxy.setPort(int(proxyPort)) proxy.setUser(proxyUser) proxy.setPassword(proxyPassword) return proxy
def __init__(self): QtGui.QMainWindow.__init__(self) self.tabs = QtGui.QTabWidget( self, tabsClosable=True, movable=True, currentChanged=self.currentTabChanged, elideMode=QtCore.Qt.ElideRight, tabCloseRequested=lambda idx: self.tabs.widget(idx).deleteLater()) self.setCentralWidget(self.tabs) self.bars = {} self.star = QtGui.QAction(QtGui.QIcon.fromTheme("emblem-favorite"), "Bookmark", self, checkable=True, triggered=self.bookmarkPage, shortcut="Ctrl+d") self.tabs.setCornerWidget( QtGui.QToolButton(self, text="New Tab", icon=QtGui.QIcon.fromTheme("document-new"), clicked=lambda: self.addTab().url.setFocus(), shortcut="Ctrl+t")) self.addAction( QtGui.QAction("Full Screen", self, checkable=True, toggled=lambda v: self.showFullScreen() if v else self.showNormal(), shortcut="F11")) self.bookmarks = self.get("bookmarks", {}) self.bookmarkPage() # Load the bookmarks menu self.history = self.get("history", []) + self.bookmarks.keys() self.completer = QtGui.QCompleter( QtCore.QStringList([QtCore.QString(u) for u in self.history])) # Use a app-wide, persistent cookiejar self.cookies = QtNetwork.QNetworkCookieJar( QtCore.QCoreApplication.instance()) self.cookies.setAllCookies([ QtNetwork.QNetworkCookie.parseCookies(c)[0] for c in self.get("cookiejar", []) ]) # Downloads bar at the bottom of the window self.downloads = QtGui.QToolBar("Downloads") self.addToolBar(QtCore.Qt.BottomToolBarArea, self.downloads) # Proxy support proxy_url = QtCore.QUrl(os.environ.get('http_proxy', '')) QtNetwork.QNetworkProxy.setApplicationProxy( QtNetwork.QNetworkProxy( QtNetwork.QNetworkProxy.HttpProxy if unicode(proxy_url.scheme( )).startswith('http') else QtNetwork.QNetworkProxy.Socks5Proxy, proxy_url.host(), proxy_url.port(), proxy_url.userName(), proxy_url.password())) if 'http_proxy' in os.environ else None [self.addTab(QtCore.QUrl(u)) for u in self.get("tabs", [])]
def setup_proxy(self): proxy = QtNetwork.QNetworkProxy() if config.setting["use_proxy"]: proxy.setType(QtNetwork.QNetworkProxy.HttpProxy) proxy.setHostName(config.setting["proxy_server_host"]) proxy.setPort(config.setting["proxy_server_port"]) proxy.setUser(config.setting["proxy_username"]) proxy.setPassword(config.setting["proxy_password"]) self.manager.setProxy(proxy)
def __init__(self): QtGui.QMainWindow.__init__(self) self.resize(1366, 768) self.centralwidget = QtGui.QWidget(self) self.mainLayout = QtGui.QHBoxLayout(self.centralwidget) self.mainLayout.setSpacing(0) self.mainLayout.setMargin(1) self.frame = QtGui.QFrame(self.centralwidget) self.gridLayout = QtGui.QVBoxLayout(self.frame) self.gridLayout.setMargin(0) self.gridLayout.setSpacing(0) self.horizontalLayout = QtGui.QHBoxLayout() self.url_box = QtGui.QLineEdit(self.frame) self.back = QtGui.QPushButton(self.frame) self.forward = QtGui.QPushButton(self.frame) self.back.setIcon(QtGui.QIcon().fromTheme("go-previous")) self.forward.setIcon(QtGui.QIcon().fromTheme("go-next")) self.horizontalLayout.addWidget(self.back) self.horizontalLayout.addWidget(self.forward) self.horizontalLayout.addWidget(self.url_box) self.gridLayout.addLayout(self.horizontalLayout) self.html = QtWebKit.QWebView() self.gridLayout.addWidget(self.html) self.mainLayout.addWidget(self.frame) self.setCentralWidget(self.centralwidget) self.connect(self.url_box, QtCore.SIGNAL("returnPressed()"), self.browse) self.connect(self.back, QtCore.SIGNAL("clicked()"), self.html.back) self.connect(self.forward, QtCore.SIGNAL("clicked()"), self.html.forward) self.default_url = "http://google.co.ke/" self.url_box.setText(self.default_url) # proxy support if 'http_proxy' in os.environ: proxy_url = QtCore.QUrl(os.environ['http_proxy']) if unicode(self.proxy_url.scheme()).starstswith('http'): protocol = QtNetwork.QNetworkProxy.HttpProxy else: protocol = QtNetwork.QNetworkProxy.Socks5Proxy QtNetwork.QNetworkProxy.setApplicationProxy( QtNetwork.QNetworkProxy(protocol, proxy_url.host(), proxy_url.port(), proxy_url.userName(), proxy_url.password())) self.browse()
def __init__(self, framework): QtNetwork.QNetworkAccessManager.__init__(self) self.framework = framework self.__use_proxy = False self.setProxy(QtNetwork.QNetworkProxy()) # QObject.connect(self, SIGNAL('authenticationRequired(QNetworkReply *, QAuthenticator *)'), self.handle_authenticationRequired) self.authenticationRequired.connect(self.handle_authenticationRequired) self.framework.subscribe_database_events(self.__db_attach, self.__db_detach) self.framework.subscribe_raft_config_updated( self.__handle_raft_config_updated)
def __init__(self): super(GMap, self).__init__() self.logger = logging.getLogger(__name__) if 'northgrum' in socket.getfqdn().split('.'): if keyring.get_password("system", getpass.getuser()) is None: keyring.set_password("system", getpass.getuser(), getpass.getpass()) proxy = QtNetwork.QNetworkProxy(QtNetwork.QNetworkProxy.HttpProxy, "centralproxy.northgrum.com", 80) proxy.setUser(getpass.getuser()) self.logger.info('using proxy to access the internet => user: %s, proxy: %s' % (getpass.getuser(), "centralproxy.northgrum.com")) proxy.setPassword(keyring.get_password("system", getpass.getuser())) QtNetwork.QNetworkProxy.setApplicationProxy(proxy) self.splitter = QtGui.QSplitter(self) self.splitter.setOrientation(QtCore.Qt.Vertical) self.web = QtWebKit.QWebView(self) path, file = os.path.split(os.path.realpath(__file__)) # self.web.load(QtCore.QUrl.fromLocalFile(QtCore.QFileInfo("gmaps.html").absoluteFilePath())) self.web.load(QtCore.QUrl.fromLocalFile(os.path.join(path, "gmaps.html"))) self.layout = QtGui.QVBoxLayout(self) # self.layout.addWidget(self.web) # self.web.page().mainFrame().setScrollBarPolicy(QtCore.Qt.Vertical, QtCore.Qt.ScrollBarAlwaysOff) self.web.page().settings().setAttribute(QtWebKit.QWebSettings.DeveloperExtrasEnabled, True) self.webInspector = QtWebKit.QWebInspector(self) self.webInspector.setPage(self.web.page()) # layout = QtGui.QVBoxLayout(self) # layout.setMargin(0) self.layout.addWidget(self.splitter) self.splitter.addWidget(self.web) self.splitter.addWidget(self.webInspector) shortcut = QtGui.QShortcut(self) shortcut.setKey(QtCore.Qt.Key_F12) shortcut.activated.connect(self.toggleInspector) self.webInspector.setVisible(False)
for _i, station in enumerate(stn_list): plot_stns_menu.addAction( station, functools.partial(self.plot_single_stn_selected, self.plot_single_stn_button, station)) self.plot_single_stn_button.setMenu(plot_stns_menu) self.plot_single_stn_button.setEnabled(True) if __name__ == '__main__': proxy_queary = query_yes_no("Input Proxy Settings?") if proxy_queary == 'yes': print('') proxy = raw_input("Proxy:") port = raw_input("Proxy Port:") try: networkProxy = QtNetwork.QNetworkProxy( QtNetwork.QNetworkProxy.HttpProxy, proxy, int(port)) QtNetwork.QNetworkProxy.setApplicationProxy(networkProxy) except ValueError: print('No proxy settings supplied..') sys.exit() app = QtGui.QApplication([]) w = MainWindow() w.raise_() app.exec_()
# ) # ) if __name__ == '__main__': import random import logging import pyutils import getpass import keyring # def update(): # map.add_circle(34.17192, -118.59521, random.random() * 100) if keyring.get_password("system", getpass.getuser()) is None: keyring.set_password("system", getpass.getuser(), getpass.getpass()) proxy = QtNetwork.QNetworkProxy(QtNetwork.QNetworkProxy.HttpProxy, "centralproxy.northgrum.com", 80) proxy.setUser(getpass.getuser()) proxy.setPassword(keyring.get_password("system", getpass.getuser())) QtNetwork.QNetworkProxy.setApplicationProxy(proxy) pyutils.setup_logging() logger = logging.getLogger() from qtbooty import App app = App('config/bad_app_config.json') # app.main.menus["File"].actions["New"].triggered.connect(test_trigger) map = Map() app.add_widget(map) # app.add_timer(1000, update) app.run() # class Map(QtGui.QWidget):
def setExternalProxy(self, proxy_path='', port=8080): QtNetwork.QNetworkProxy.setApplicationProxy( QtNetwork.QNetworkProxy(QtNetwork.QNetworkProxy.HttpProxy, proxy_path, port))