コード例 #1
0
ファイル: network.py プロジェクト: blackknifes/VNR-Core
    def createRequest(self, op, req, outgoingData=None):  # override
        url = req.url()
        #print url
        #if url.scheme() == 'https' and url.host() in ('www.dmm.com', 'dmm.com'):
        #  path = url.path()
        #  if path.startswith('/js/') or path.startswith('/css/'):
        #    url.setScheme('http') # downgrade to http
        #    req.setUrl(url)
        #    dprint("downgrade https to http:", url)
        #print url
        newurl = _WbNetworkAccessManager.getBlockedUrl(url)
        if newurl:
            req = QNetworkRequest(newurl)
        else:
            newurl = proxy.toproxyurl(url)
            if newurl and newurl != url:
                req = QNetworkRequest(req)  # since request tis constent
                req.setUrl(newurl)
                _WbNetworkAccessManager.setRequestHeaders(req)
                reply = super(WbNetworkAccessManager,
                              self).createRequest(op, req, outgoingData)
                #if url.host().lower().endswith('dmm.co.jp'):
                reply.setUrl(url)  # restore the old url
                reply.setProperty(REQ_PROXY_URL, url)
                #print newurl
                return reply
            #else:
            #  print url

        _WbNetworkAccessManager.setRequestHeaders(req)
        return super(WbNetworkAccessManager,
                     self).createRequest(op, req, outgoingData)
コード例 #2
0
 def test_connection(self):
     self.message.setText(
         '<span style="font-size: 10px; color: #000000;">' +
         'Verbindung wird getestet.' + '</span>')
     self.nam.finished.connect(self.test_reply)
     self.nam.sslErrors.connect(self.ssl_errors)
     ssl_config = QSslConfiguration().defaultConfiguration()
     ssl_config.setCiphers(QSslSocket().supportedCiphers())
     if self.certificate:
         certificate = QSslCertificate(encoded=self.certificate,
                                       format=QSsl.Pem)
         ssl_config.setCaCertificates([certificate])
     else:
         ssl_config.setCaCertificates([])
     url = QUrl(self.url_edit.text())
     url.setPath("/".join(
         filter(bool, (url.path() + "/ajax/read.php").split("/"))))
     request = QNetworkRequest(url)
     request.setSslConfiguration(ssl_config)
     request.setRawHeader(
         "Authorization", "Basic ".encode('utf-8') + b64encode(
             (self.username_edit.text() + ":" +
              self.password_edit.text()).encode('utf-8')))
     request.setHeader(QNetworkRequest.ContentTypeHeader,
                       "application/x-www-form-urlencoded")
     self.replies.add(self.nam.post(request, QByteArray()))
コード例 #3
0
ファイル: ghost.py プロジェクト: harobed/Ghost.py
    def open(self, address, method='get', headers={}, auth=None, body=None,
             default_popup_response=None):
        """Opens a web page.

        :param address: The resource URL.
        :param method: The Http method.
        :param headers: An optional dict of extra request hearders.
        :param auth: An optional tuple of HTTP auth (username, password).
        :param body: An optional string containing a payload.
        :param default_popup_response: the default response for any confirm/
        alert/prompt popup from the Javascript (replaces the need for the with
        blocks)
        :return: Page resource, All loaded resources.
        """
        body = body or QByteArray()
        try:
            method = getattr(QNetworkAccessManager,
                             "%sOperation" % method.capitalize())
        except AttributeError:
            raise Error("Invalid http method %s" % method)
        request = QNetworkRequest(QUrl(address))
        request.CacheLoadControl(0)
        for header in headers:
            request.setRawHeader(header, headers[header])
        self._auth = auth
        self._auth_attempt = 0  # Avoids reccursion

        self.main_frame.load(request, method, body)
        self.loaded = False

        if default_popup_response is not None:
            Ghost._prompt_expected = (default_popup_response, None)
            Ghost._confirm_expected = (default_popup_response, None)

        return self.wait_for_page_loaded()
コード例 #4
0
ファイル: mediacontent_test.py プロジェクト: setanta/Mobility
    def testRequestCtor(self):
        request = QNetworkRequest(QUrl('http://example.com/movie.mov'))
        request.setAttribute(QNetworkRequest.User, 1234)

        media = QMediaContent(request)

        self.assertEqual(media.canonicalUrl(),
                         QUrl('http://example.com/movie.mov'))
        self.assertEqual(media.canonicalResource().request(), request)
        self.assertEqual(media.canonicalResource().url(),
                         QUrl('http://example.com/movie.mov'))
コード例 #5
0
ファイル: image_downloader.py プロジェクト: jfoote/trollbox
 def get(self, url, local_path):
     print "url", url
     print "local_path", local_path
     self.url = url
     self.local_path = local_path
     self.mb = DownloadMessageBox(self.parent())
     self.mb.buttonClicked.connect(self.handleCancel)
     self.mb.rejected.connect(self.handleReject)
     mgr = QNetworkAccessManager(self)
     mgr.finished.connect(self.handleFinished)
     self.reply = mgr.get(QNetworkRequest(QUrl(url)))
     self.reply.downloadProgress.connect(self.mb.updateProgress)
     self.mb.exec_()
コード例 #6
0
ファイル: dl.py プロジェクト: blackknifes/VNR-Core
 def get(self, url, path):
     """
 @param  url  unicode or QUrl
 @param  unicode  path
 @return  bool  whether succeeded
 """
     dprint('enter:', url)
     d = self.__d
     d.stop()
     if d.openFile(path):
         if not isinstance(url, QUrl):
             url = QUrl(url)
         d.request = QNetworkRequest(url)
         ok = d.start()
     else:
         ok = False
     dprint('leave: ret = %s' % ok)
     return ok
コード例 #7
0
ファイル: t1.py プロジェクト: zjx4041739/dlp
 def _make_request(self, url):
     request = QNetworkRequest()
     request.setUrl(QUrl(url))
     return request
コード例 #8
0
 def do_download(self, dl_url):
     url = QUrl(dl_url)
     req = QNetworkRequest(url)
     reply = self.manager.get(req)
     self.current_downloads[reply] = dl_url