Я пытаюсь сохранить все файлы cookie, которые я получаю с веб-сайта, и распечатать их. Пожалуйста, помогите мне заставить его работать, потому что я думаю, что ничего не храню, и именно по этой причине у меня ничего нет на выходе.печатать куки из QNetworkCookie, PyQt4
Я тестирую этот код на веб-сайте google, и я уверен, что они хранят файлы cookie, когда вы попадаете на страницу.
Итак, я пытаюсь получить все доступные куки и распечатать их. вот код:
#! /usr/bin/env python2.7
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtNetwork import *
from PyQt4.QtWebKit import *
import sys, os, simplejson, signal
class MainWindow(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.tabs = QTabWidget()
self.setCentralWidget(self.tabs)
self.settings = QSettings()
self.numberOfTabs = 0
self.cookies = QNetworkCookieJar()
self.cookies.setAllCookies([QNetworkCookie.parseCookies(c)[0] for c in self.get('cookiejar')])
def put(self, key, value):
self.settings.setValue(key, simplejson.dumps(value))
self.settings.sync()
def get(self, key):
v = self.settings.value(key)
return simplejson.loads(unicode(v.toString()))
def addNewTab(self, url=QUrl('')):
self.numberOfTabs += 1
self.tabs.setCurrentIndex(self.tabs.addTab(Tab(QUrl(url)),'%s'%str(self.numberOfTabs)))
self.setCookies()
return self.tabs.currentWidget()
def setCookies(self):
self.put('cookiejar', [str(c.toRawForm()) for c in self.cookies.allCookies()])
print self.get('cookiejar')
class Tab(QWebView):
def __init__(self, url):
QWebView.__init__(self)
self.load(url)
if __name__ == '__main__':
app = QApplication(sys.argv)
browser = MainWindow()
browser.addNewTab('https://google.com')
browser.show()
if signal.signal(signal.SIGINT, signal.SIG_DFL):
sys.exit(app.exec_())
app.exec_()
спасибо! – Vor