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

Method createRequest

QWebView/BlockRequest.py:19–39  ·  view source on GitHub ↗

创建请求 :param op: 操作类型见http://doc.qt.io/qt-5/qnetworkaccessmanager.html#Operation-enum :param originalReq: 原始请求 :param outgoingData: 输出数据

(self, op, originalReq, outgoingData)

Source from the content-addressed store, hash-verified

17class RequestInterceptor(QNetworkAccessManager):
18
19 def createRequest(self, op, originalReq, outgoingData):
20 """创建请求
21 :param op: 操作类型见http://doc.qt.io/qt-5/qnetworkaccessmanager.html#Operation-enum
22 :param originalReq: 原始请求
23 :param outgoingData: 输出数据
24 """
25 url = originalReq.url().toString()
26 if url.find('pos.baidu.com') > -1 and url.find('ltu=') > -1:
27 # 拦截百度联盟的广告
28 print('block:', url)
29 originalReq.setUrl(QUrl())
30 if op == self.PostOperation and outgoingData:
31 # 拦截或者修改post数据
32 # 读取后要重新设置,不然网站接收不到请求
33 data = outgoingData.readAll().data()
34 print('post data:', data)
35 # 修改data后重新设置
36 outgoingData = QBuffer(self)
37 outgoingData.setData(data)
38
39 return super(RequestInterceptor, self).createRequest(op, originalReq, outgoingData)
40
41
42class Window(QWebView):

Callers

nothing calls this directly

Calls 2

dataMethod · 0.45
setDataMethod · 0.45

Tested by

no test coverage detected