-
-
[原创]【原创】Selenium获取请求头、响应头
-
发表于: 2022-5-9 17:44 4171
-
<table><tr><td bgcolor=orange>本文仅供学习交流使用,如侵立删!</td></tr></table>
Selenium获取请求头、响应头
操作环境
- win10 、 mac
- Python3.9
- selenium、seleniumwire
selenium是没有办法直接获取请求的详细Headers,很多时候我们我们是需要提取相关的参数来做进一步使用比如token之类的,这里推荐使用一个SeleniumWire模块来达到目的
Selenium-wire模块介绍
Selenium-wire官方文档
安装:pip install selenium-wire
项目介绍
Selenium Wire 扩展了 Selenium 的 Python 绑定,让您可以访问浏览器发出的底层请求。 您编写代码的方式与编写 Selenium 的方式相同,但您会获得额外的 API 来检查请求和响应并动态更改它们。
Compatibilty
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from seleniumwire import webdriver def get_request_headers(): """ 获取请求头headers详细信息 """ driver = webdriver.Chrome() driver.get( 'https://www.baidu.com' ) for request in driver.requests: print ( '请求headers:' ) print (request.headers) break driver.quit() |
获取响应headers
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from seleniumwire import webdriver def get_response_headers(): """ 获取响应头headers详细信息 """ driver = webdriver.Chrome() driver.get( 'https://www.baidu.com' ) for request in driver.requests: print ( '响应headers:' ) print (request.response.headers) break driver.quit() |
获取所有加载的url
1 2 3 4 5 6 7 8 9 10 11 12 13 | from seleniumwire import webdriver def get_request_headers(): """ 获取所有加载的url """ driver = webdriver.Chrome() driver.get( 'https://www.baidu.com' ) print ( '获取所有加载的url:' ) for request in driver.requests: print (request.url) driver.quit() |
这里就先分享这几个方法,基本上整个请求流程中所有的数据都是可以拿到的,具体可以查看官方文档或直接查看源码
<table><tr><td bgcolor=orange>本文仅供学习交流使用,如侵立删!</td></tr></table>
赞赏
看原图
赞赏
雪币:
留言: