mirror of
https://gitee.com/g1879/DrissionPage.git
synced 2024-12-10 04:00:23 +08:00
commit
1f914ea5a3
@ -1,5 +1,3 @@
|
|||||||
# 施工中。。。
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 监听浏览器网络数据
|
# 监听浏览器网络数据
|
||||||
@ -9,3 +7,54 @@
|
|||||||
这些数据通常以 json 形式发送,浏览器接收后,对其进行解析,再加载到 DOM 相应位置。
|
这些数据通常以 json 形式发送,浏览器接收后,对其进行解析,再加载到 DOM 相应位置。
|
||||||
|
|
||||||
以前,我们从 DOM 中去获取解析后数据的,可能存在
|
以前,我们从 DOM 中去获取解析后数据的,可能存在
|
||||||
|
|
||||||
|
## 控制浏览器同时监听请求
|
||||||
|
|
||||||
|
复制此代码可直接运行查看结果。
|
||||||
|
|
||||||
|
```python
|
||||||
|
'''
|
||||||
|
如果监听特定请求的Chrome浏览器数据,可以采用如下代码
|
||||||
|
'''
|
||||||
|
p = MixPage(driver_options=do, session_options=False)
|
||||||
|
#监听浏览器
|
||||||
|
l =Listener(p)
|
||||||
|
# 找到需要监听的链接
|
||||||
|
l.listen('JobSearchResult.aspx',count=10,asyn=True)
|
||||||
|
p.ele(".next-page PageNumber").click(by_js=True)
|
||||||
|
|
||||||
|
for i in l.steps():
|
||||||
|
scode = i[0].body
|
||||||
|
# 一旦数据出来,立即停止加载
|
||||||
|
p.stop_loading()
|
||||||
|
#使用解析网页
|
||||||
|
p.ele(".next-page PageNumber").click(by_js=True)
|
||||||
|
#停止监听,可以设置条件
|
||||||
|
l.stop()
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 监听指定端口的请求
|
||||||
|
|
||||||
|
复制此代码可直接运行查看结果。
|
||||||
|
|
||||||
|
|
||||||
|
```python
|
||||||
|
'''
|
||||||
|
如果仅仅是监听Chrome浏览器的请求可以采用下面的代码
|
||||||
|
'''
|
||||||
|
from FlowViewer import Listener
|
||||||
|
#监听有端口的浏览器
|
||||||
|
l =Listener()
|
||||||
|
|
||||||
|
l.listen(None,count=None,asyn=True)
|
||||||
|
|
||||||
|
for i in l.steps():
|
||||||
|
print(i[0].url)
|
||||||
|
print(i[0].body)
|
||||||
|
|
||||||
|
#停止监听,可以设置条件或者跳出循环
|
||||||
|
l.stop()
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user