MCPcopy Index your code
hub / github.com/PyQt5/PyQt / WebEngineView

Class WebEngineView

QWebEngineView/GetCookie.py:25–100  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23
24
25class WebEngineView(QWebEngineView):
26 DomainCookies = {} # 存放domain的key-value
27 PathCookies = {} # 存放domain+path的key-value
28
29 def __init__(self, *args, **kwargs):
30 super(WebEngineView, self).__init__(*args, **kwargs)
31 self.cookieView = QTextEdit()
32 self.cookieView.resize(800, 400)
33 self.cookieView.move(400, 400)
34 self.cookieView.setWindowTitle('Cookies')
35 self.cookieView.show()
36 # 绑定cookie被添加的信号槽
37 QWebEngineProfile.defaultProfile().cookieStore(
38 ).cookieAdded.connect(self.onCookieAdd)
39 self.loadFinished.connect(self.onLoadFinished)
40
41 def closeEvent(self, event):
42 self.cookieView.close()
43 super(WebEngineView, self).closeEvent(event)
44
45 def bytestostr(self, data):
46 if isinstance(data, str):
47 return data
48 if isinstance(data, QByteArray):
49 data = data.data()
50 if isinstance(data, bytes):
51 data = data.decode(errors='ignore')
52 else:
53 data = str(data)
54 return data
55
56 def onLoadFinished(self):
57 print("*****AllDomainCookies:", self.getAllDomainCookies())
58 print("*****AllPathCookies:", self.getAllPathCookies())
59 self.cookieView.append(
60 "AllDomainCookies: " + self.bytestostr(self.getAllDomainCookies()))
61 self.cookieView.append('')
62 self.cookieView.append(
63 "AllPathCookies: " + self.bytestostr(self.getAllPathCookies()))
64 self.cookieView.append('')
65
66 print("*****pyqt.site cookie:", self.getDomainCookies(".pyqt.site"))
67 print("*****pyqt.site / path cookie:",
68 self.getPathCookies(".pyqt.site/"))
69
70 def getAllDomainCookies(self):
71 return self.DomainCookies
72
73 def getDomainCookies(self, domain):
74 return self.DomainCookies.get(domain, {})
75
76 def getAllPathCookies(self):
77 return self.PathCookies
78
79 def getPathCookies(self, dpath):
80 return self.PathCookies.get(dpath, {})
81
82 def onCookieAdd(self, cookie):

Callers 1

GetCookie.pyFile · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected