python
主页 > 脚本 > python >

Python中selenium获取token的方法

2024-01-29 | 佚名 | 点击:

在不用(或不知道接口)接口获取token的情况下,通过selenium登录获取到token

------该token值会作为后续调用接口的凭证

ps:token、cookie 都可以是接口中需要的凭证(别的遇到了再说),具体看项目中是如何应用的。首先可以通过F12的方式,用postman测试哪一些凭证是必须的,然后想办法拿到他

今天遇到的是token

刚开始一直掉在下面这个坑里面,需要的就是这个X-API-Token,看这个东西在 headers里面,就想着通过seleniumwire 来拿到所有的headers

1

2

3

4

5

6

7

from seleniumwire import webdriver

agent = self.driver.requests       

 # 获取请求头

for request in agent:

      if request.url=='www.aaaa.com':

           print(request.url,

                request.headers)

但是其他的headers都拿到了,就是这个X-API-Token拿不到

前面9个都拿到了

后面就想是不是在token里面,然后果然在token里面

拿token的方法

 ---可能刚登录进来时候没有token,这个时候就在定位其他元素并点击下

1

2

3

4

5

6

7

8

# selenium执行 js语句

# 这里是存到localStorage中的,也有可能是存到sessionStorage中

    # window.sessionStorage和直接写sessionStorage是等效的

    # localStorage (如果是在类中需要加self)

    token = driver.execute_script('return localStorage.getItem("token");')

    print(token)

    # sessionStorage中

    token = self.driver.execute_script('return sessionStorage.getItem("token");')

原文链接:
相关文章
最新更新