Advertisement
stuppid_bot

persistent cookie storage for PyQt5

Jun 7th, 2015
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.87 KB | None | 0 0
  1. from PyQt5.QtNetwork import QNetworkCookie, QNetworkCookieJar
  2. import os
  3.  
  4.  
  5. class CookieJar(QNetworkCookieJar):
  6.     """Persistent cookie jar.
  7.  
  8.    Usage:
  9.        self.cj = CookieJar('cookies.txt')
  10.        self.webView.page().networkAccessManager().setCookieJar(
  11.            self.cj)"""
  12.     def __init__(self, filename, parent=None):
  13.         super().__init__(parent)
  14.         self.filename = filename
  15.         self.load()
  16.  
  17.     def load(self):
  18.         if os.path.isfile(self.filename):
  19.             data = open(self.filename, 'rb').read()
  20.             self.setAllCookies(QNetworkCookie.parseCookies(data))
  21.  
  22.     def save(self):
  23.         f = open(self.filename, 'wb')
  24.         for cookie in self.allCookies():
  25.             if not cookie.isSessionCookie():
  26.                 f.write(cookie.toRawForm())
  27.                 f.write(b'\n')
  28.  
  29.     def __del__(self):
  30.         self.save()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement