python 用seleniumwire模块获取网站登陆后的请求头token字符串数据

from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from seleniumwire import webdriver
import time

# 设置浏览器隐身模式,运行此代码不会显示浏览器
chrome_options = Options()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(chrome_options=chrome_options)
url = "http://www.*******.com/login"

def get_token(username="*****", password="********"):
    # 操作浏览器,打开url,用户名密码登陆
    driver.get(url)#访问登录网址
    #设置网页加载时间,防止网页未加载完成去定位元素报异常
    time.sleep(2)
    # 定位用户名元素并输入
    driver.find_elements(by=By.TAG_NAME, value="input")[0].send_keys(username)
    #定位密码元素并输入
    driver.find_elements(by=By.TAG_NAME, value="input")[1].send_keys(password)
    # 定位登陆按钮并点击
    driver.find_element(By.TAG_NAME, "button").click()
    #driver.requests返回的是登陆网页后所有的请求(如get,post)元素列表(如下图),我们取其中一个请求就行了,
    #如果在请求头没有发现你所需要的数据(如token令牌信息),可以多尝试列表里面的其他的请求
    url1 = driver.requests[-1]
    #获得token令牌数据
    token = dict(url1.headers)["token"]
    #关闭浏览器
    driver.close()
    return token


if __name__ == '__main__':
    print(get_token())

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值