示例#1
0
 def loadCookies(self, cookies):
     """
     Public method to restore the saved cookies.
     
     @param cookies byte array containing the saved cookies (QByteArray)
     @return list of cookies
     """
     if cookies.isEmpty():
         return []
     
     cookiesList = []
     data = QByteArray(cookies)
     stream = QDataStream(data, QIODevice.ReadOnly)
     stream.setVersion(QDataStream.Qt_4_6)
     
     version = stream.readUInt16()
     if version != self.JAR_VERSION:
         return []
     
     stream.readUInt32()  # number of cookies
     
     rawCookie = QByteArray()
     while not stream.atEnd():
         stream >> rawCookie
         newCookies = QNetworkCookie.parseCookies(rawCookie)
         for newCookie in newCookies:
             cookiesList.append(newCookie)
     
     return cookiesList
示例#2
0
    def loadCookies(self, cookies):
        """
        Public method to restore the saved cookies.
        
        @param cookies byte array containing the saved cookies (QByteArray)
        @return list of cookies
        """
        if cookies.isEmpty():
            return []

        cookiesList = []
        data = QByteArray(cookies)
        stream = QDataStream(data, QIODevice.ReadOnly)
        stream.setVersion(QDataStream.Qt_4_6)

        version = stream.readUInt16()
        if version != self.JAR_VERSION:
            return []

        stream.readUInt32()  # number of cookies

        rawCookie = QByteArray()
        while not stream.atEnd():
            stream >> rawCookie
            newCookies = QNetworkCookie.parseCookies(rawCookie)
            for newCookie in newCookies:
                cookiesList.append(newCookie)

        return cookiesList
示例#3
0
    def __init__(self, parent=None, options=None):
        """ Load cookies from a file

        """
        super(CookieJar, self).__init__(parent)
        print("INIT CookieJar")

        if options['cookie_allow'] is None:
            self.allowed = []
        else:
            self.allowed = options['cookie_allow']

        self.storage = options['cookie_file']
        if self.storage is not None:
            self.storage = expanduser("~/.eilat/cookies/") + self.storage
            print(self.storage)
            try:
                with open(self.storage, "r") as readfile:
                    cookies = [
                        QNetworkCookie.parseCookies(k)
                        for k in readfile.readlines()
                    ]
                    cookies = [x for y in cookies for x in y]  # flatten
                    self.setAllCookies(cookies)  # COO02
            except IOError:
                print("LOAD COOKIES: empty?")
示例#4
0
 def parse_cookies(self):
     """Parse cookies from lineparser and store them."""
     cookies: Sequence[QNetworkCookie] = []
     for line in self._lineparser:
         line_cookies = QNetworkCookie.parseCookies(line)
         cookies += line_cookies  # type: ignore[operator]
     self.setAllCookies(cookies)
示例#5
0
 def restore_cookies(self):
     if os.path.exists(self.cookie_path):
         with open(self.cookie_path, 'r') as f:
             lines = ''
             for line in f:
                 lines = lines + line
                 allCookies = QNetworkCookie.parseCookies(lines)
                 QNetworkCookieJar.setAllCookies(self, allCookies)
示例#6
0
 def __init__(self, parent=None):
     super().__init__(parent)
     datadir = utils.get_standard_dir(QStandardPaths.DataLocation)
     self._linecp = lineparser.LineConfigParser(datadir, 'cookies',
                                                binary=True)
     cookies = []
     for line in self._linecp:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
示例#7
0
 def __init__(self, parent=None):
     super().__init__(parent)
     datadir = standarddir.get(QStandardPaths.DataLocation)
     self._linecp = lineparser.LineConfigParser(datadir, 'cookies',
                                                binary=True)
     cookies = []
     for line in self._linecp:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
     objreg.get('config').changed.connect(self.cookies_store_changed)
示例#8
0
 def load_cookie(self):
     cookies = []
     if os.path.isfile(cookie_file):
         with open(cookie_file, 'rb') as f:
             for line in f:
                 cookie = QNetworkCookie.parseCookies(line)
                 self.cookiejar.setCookiesFromUrl(cookie,
                                                  QUrl(longzhu_login_url))
                 self.page().profile().cookieStore().setCookie(cookie[0])
             return True
     return False
示例#9
0
 def __init__(self, parent=None):
     super().__init__(parent)
     self._lineparser = lineparser.LineParser(
         standarddir.data(), 'cookies', binary=True, parent=self)
     cookies = []
     for line in self._lineparser:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
     objreg.get('config').changed.connect(self.cookies_store_changed)
     objreg.get('save-manager').add_saveable(
         'cookies', self.save, self.changed,
         config_opt=('content', 'cookies-store'))
示例#10
0
    def __update_cookie_store(self, cookie_store):
        from PyQt5.QtNetwork import QNetworkCookie
        from PyQt5.QtCore import QByteArray

        for key, cookie in self.__cookies.items():
            # Skip the auth token as we'll get it again after a successful login
            if key == "_xsrf":
                continue

            # Add the cookie to store
            value = str(cookie)
            if ":" in value:
                value = value.split(":", 1)[1].strip()
            for morsel in QNetworkCookie.parseCookies(
                    QByteArray(value.encode("utf-8"))):
                cookie_store.setCookie(morsel)
示例#11
0
 def __init__(self, parent=None):
     super().__init__(parent)
     self._lineparser = lineparser.LineParser(standarddir.data(),
                                              'cookies',
                                              binary=True,
                                              parent=self)
     cookies = []
     for line in self._lineparser:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
     objreg.get('config').changed.connect(self.cookies_store_changed)
     objreg.get('save-manager').add_saveable('cookies',
                                             self.save,
                                             self.changed,
                                             config_opt=('content',
                                                         'cookies-store'))
示例#12
0
    def __init__(self, parent=None, options=None):
        """ Load cookies from a file

        """
        super(CookieJar, self).__init__(parent)
        print("INIT CookieJar")

        if options['cookie_allow'] is None:
            self.allowed = []
        else:
            self.allowed = options['cookie_allow']

        self.storage = options['cookie_file']
        if self.storage is not None:
            self.storage = expanduser("~/.eilat/cookies/") + self.storage
            print(self.storage)
            try:
                with open(self.storage, "r") as readfile:
                    cookies = [QNetworkCookie.parseCookies(k)
                               for k in readfile.readlines()]
                    cookies = [x for y in cookies for x in y]  # flatten
                    self.setAllCookies(cookies)  # COO02
            except IOError:
                print("LOAD COOKIES: empty?")
示例#13
0
文件: datajar.py 项目: Fe-ver/hae
	def load(self):
		strCookies = self.settings.value('cookies')
		if strCookies:
			self.setAllCookies(QNetworkCookie.parseCookies(strCookies))
示例#14
0
 def load(self):
     strCookies = self.settings.value('cookies')
     if type(strCookies) == str:
         strCookies = strCookies.encode("utf-8")
     if strCookies:
         self.setAllCookies(QNetworkCookie.parseCookies(strCookies))
示例#15
0
 def parse_cookies(self):
     """Parse cookies from lineparser and store them."""
     cookies = []
     for line in self._lineparser:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
示例#16
0
 def parse_cookies(self):
     """Parse cookies from lineparser and store them."""
     cookies = []
     for line in self._lineparser:
         cookies += QNetworkCookie.parseCookies(line)
     self.setAllCookies(cookies)
示例#17
0
 def importCookies(self):
     """ Window object must contain QSetting object 'self.settings' before calling this"""
     settings = QSettings('quartz-browser', 'cookies', self)
     cookiesValue = settings.value("Cookies", QByteArray())
     cookiesList = QNetworkCookie.parseCookies(cookiesValue)
     self.setAllCookies(cookiesList)
示例#18
0
 def load_qt_cookie(self, cookie_data):
     b = QByteArray()
     cookies = QNetworkCookie.parseCookies(b.append(cookie_data))
     self.setAllCookies(cookies)
示例#19
0
 def load(self):
     strCookies = self.settings.value('cookies')
     if strCookies:
         self.setAllCookies(QNetworkCookie.parseCookies(strCookies))
示例#20
0
 def load_cookie(self):
     with open(self.cookie_file, 'rb+') as store:
         cookies = store.read()
         return QNetworkCookie.parseCookies(cookies)
示例#21
0
 def load(self):
     data = self.cookie_store.value('cookies', [])
     if data:
         self.setAllCookies([QNetworkCookie.parseCookies(c)[0] for c in data])