Ejemplo n.º 1
0
 def on_cookie_added(self, cookie: QtNetwork.QNetworkCookie):
     """Handle set cookie"""
     try:
         self._cookies[_qbytearray_to_str(
             cookie.name())] = _qbytearray_to_str(cookie.value())
     except:
         logger.exception(
             f'Failed to set cookie: {cookie.name()}={cookie.value()}')
Ejemplo n.º 2
0
 def cookie_added(self, cookie: QNetworkCookie):
     if self.check_cookie_domain(cookie):
         name = cookie.name().data().decode()
         value = cookie.value().data().decode()
         self.saved_cookies[name] = value
         for _name in self.required_cookies:
             if _name not in self.saved_cookies:
                 break
         else:
             print(self.required_cookies, self.saved_cookies)
             self.succeed.emit(self.saved_cookies)
Ejemplo n.º 3
0
def test_set_cookies_accept(config_stub, qtbot, monkeypatch):
    """Test setCookiesFromUrl with cookies enabled."""
    config_stub.data = CONFIG_ALL_COOKIES
    ram_jar = cookies.RAMCookieJar()
    cookie = QNetworkCookie(b'foo', b'bar')
    url = QUrl('http://example.com/')
    with qtbot.waitSignal(ram_jar.changed):
        assert ram_jar.setCookiesFromUrl([cookie], url)

    # assert the cookies are added correctly
    all_cookies = ram_jar.cookiesForUrl(url)
    assert len(all_cookies) == 1
    saved_cookie = all_cookies[0]
    expected = cookie.name(), cookie.value()
    assert saved_cookie.name(), saved_cookie.value() == expected
Ejemplo n.º 4
0
def test_set_cookies_accept(config_stub, qtbot, monkeypatch):
    """Test setCookiesFromUrl with cookies enabled."""
    config_stub.data = CONFIG_ALL_COOKIES
    ram_jar = cookies.RAMCookieJar()
    cookie = QNetworkCookie(b'foo', b'bar')
    url = QUrl('http://example.com/')
    with qtbot.waitSignal(ram_jar.changed):
        assert ram_jar.setCookiesFromUrl([cookie], url)

    # assert the cookies are added correctly
    all_cookies = ram_jar.cookiesForUrl(url)
    assert len(all_cookies) == 1
    saved_cookie = all_cookies[0]
    expected = cookie.name(), cookie.value()
    assert saved_cookie.name(), saved_cookie.value() == expected
Ejemplo n.º 5
0
 def __cookie_to_json(self):
     cookies_list_info = []
     for c in self.__cookies:
         c = QNetworkCookie(c)
         data = {
             "name": bytearray(c.name()).decode(),
             "domain": c.domain(),
             "value": bytearray(c.value()).decode(),
             "path": c.path(),
             "expirationDate": c.expirationDate().toString(Qt.ISODate),
             "secure": c.isSecure(),
             "httponly": c.isHttpOnly()
         }
         cookies_list_info.append(data)
     return cookies_list_info
Ejemplo n.º 6
0
def test_set_cookies_accept(config_stub, qtbot, monkeypatch):
    """Test setCookiesFromUrl with cookies enabled."""
    monkeypatch.setattr(objects, 'backend', usertypes.Backend.QtWebKit)
    config_stub.val.content.cookies.accept = 'all'

    ram_jar = cookies.RAMCookieJar()
    cookie = QNetworkCookie(b'foo', b'bar')
    url = QUrl('http://example.com/')
    with qtbot.waitSignal(ram_jar.changed):
        assert ram_jar.setCookiesFromUrl([cookie], url)

    # assert the cookies are added correctly
    all_cookies = ram_jar.cookiesForUrl(url)
    assert len(all_cookies) == 1
    saved_cookie = all_cookies[0]
    expected = cookie.name(), cookie.value()
    assert saved_cookie.name(), saved_cookie.value() == expected
Ejemplo n.º 7
0
def test_set_cookies_accept(config_stub, qtbot, monkeypatch):
    """Test setCookiesFromUrl with cookies enabled."""
    monkeypatch.setattr(objects, 'backend', usertypes.Backend.QtWebKit)
    config_stub.val.content.cookies.accept = 'all'

    ram_jar = cookies.RAMCookieJar()
    cookie = QNetworkCookie(b'foo', b'bar')
    url = QUrl('http://example.com/')
    with qtbot.waitSignal(ram_jar.changed):
        assert ram_jar.setCookiesFromUrl([cookie], url)

    # assert the cookies are added correctly
    all_cookies = ram_jar.cookiesForUrl(url)
    assert len(all_cookies) == 1
    saved_cookie = all_cookies[0]
    expected = cookie.name(), cookie.value()
    assert saved_cookie.name(), saved_cookie.value() == expected
Ejemplo n.º 8
0
def toPyCookie(qt_cookie: QNetworkCookie) -> Cookie:
    port = None
    port_specified = False
    secure = qt_cookie.isSecure()
    name = qt_cookie.name().data().decode()
    value = qt_cookie.value().data().decode()
    v = qt_cookie.path()
    path_specified = bool(v != "")
    path = v if path_specified else None
    v = qt_cookie.domain()
    domain_specified = bool(v != "")
    domain = v
    if domain_specified:
        domain_initial_dot = v.startswith(".")
    else:
        domain_initial_dot = None
    v = int(qt_cookie.expirationDate().toTime_t())
    expires = 2147483647 if v > 2147483647 else v
    rest = {"HttpOnly": qt_cookie.isHttpOnly()}
    discard = False
    return Cookie(
        0,
        name,
        value,
        port,
        port_specified,
        domain,
        domain_specified,
        domain_initial_dot,
        path,
        path_specified,
        secure,
        expires,
        discard,
        None,
        None,
        rest,
    )