Selenium 获取浏览器请求的 请求头、响应头

  • selenium是没有办法直接获取请求的详细Headers,很多时候我们我们是需要提取相关的参数来做进一步使用比如token之类的
  • 这里推荐使用一个SeleniumWire模块来达到目的

 

Selenium-wire模块:

安装:

pip install selenium-wire

Selenium Wire 扩展了 Selenium 的 Python 绑定,让您可以访问浏览器发出的底层请求。 您编写代码的方式与编写 Selenium 的方式相同,但您会获得额外的 API 来检查请求和响应并动态更改它们

获取请求headers:

复制代码
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 :

复制代码
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() 
复制代码

 

使用Interceptor获取所有加载的url,header等信息 :

https://github.com/wkeeling/selenium-wire?tab=readme-ov-file#intercepting-requests-and-responses

 

 

 

 

posted @   苹果芒  阅读(3463)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示