def __init__(self, cookie: QNetworkCookie = None, parent: QWidget = None) -> None: super().__init__(parent) self.setupUi(self) if cookie: self.m_nameLineEdit.setText(cookie.name().data().decode()) self.m_domainLineEdit.setText(cookie.domain()) self.m_valueLineEdit.setText(cookie.value().data().decode()) self.m_pathLineEdit.setText(cookie.path()) self.m_dateEdit.setDate(cookie.expirationDate().date()) self.m_isSecureComboBox.addItem( self.tr("yes") if cookie.isSecure() else self.tr("no")) self.m_isHttpOnlyComboBox.addItem( self.tr("yes") if cookie.isHttpOnly() else self.tr("no")) self.m_addButton.setVisible(False) self.m_cancelButton.setText(self.tr("Close")) else: self.m_nameLineEdit.setReadOnly(False) self.m_domainLineEdit.setReadOnly(False) self.m_valueLineEdit.setReadOnly(False) self.m_pathLineEdit.setReadOnly(False) self.m_dateEdit.setReadOnly(False) self.m_dateEdit.setDate( QDateTime.currentDateTime().addYears(1).date()) self.m_isSecureComboBox.addItem(self.tr("no")) self.m_isSecureComboBox.addItem(self.tr("yes")) self.m_isHttpOnlyComboBox.addItem(self.tr("no")) self.m_isHttpOnlyComboBox.addItem(self.tr("yes"))
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
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, )