pythonUI自动化之selenium获取浏览器接口信息
selenium并不支持获取响应的数据,我们可以使用selenium-wire库,selenium-wire扩展了 Selenium 的 Python 绑定,可以访问浏览器发出的底层请求。 编写的代码与 Selenium 的方式相同。
1. 先安装seleniumwire的插件
pip install selenium-wire -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
注意:seleniumwire只兼容Selenium 4.0.0+,所以如果版本不兼容,请升级selenium
2. 在初始化浏览器的时候,引用的包由selenium改为seleniumwire
# from selenium import webdriver from seleniumwire import webdriver
3. 获取网络响应的内容,也就是如图部分的url响应:driver.requests
4. driver.requests返回的是一个列表,遍历每个url来获取想要的url响应信息。
for request in driver.requests: if request.response: # 判断列表数据的接口在不在获取的请求中 if '/sugrec' in request.url: print( # 请求方式 request.method, # 获取请求参数 request.body, # 获取请求头 request.headers, # 获取结果的状态码 request.response.status_code, # 获取请求的返回值 request.response.body ) break
补充:获取的响应中可能包含中文乱码, 可以用该方法解决:
body = request.response.body print(body.decode('utf-8'))
参考文章,侵权请联系本人删除:https://blog.csdn.net/qq_40480758/article/details/135016567
分类:
PythonUI自动化
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现