通过selenium获取浏览器的cookie等头部信息

一、背景介绍

对于部分有登陆限制的网站/APP我们无法通过登陆接口实现登陆(比如验证码)
但是我们还想绕过登陆接口通过接口来实现一些操作,毕竟UI自动化比较慢。
想到了可以通过UI自动化来进行登录(之前也介绍过UI自动化实现自动登录,
包括验证码的实现),然后获取登陆后的cookie等信息,进而实现接口操作

二、实现方式

seleniumUI自动化登陆,然后再登陆后获取当前的headers信息。通过获取的headers信息
采用接口的形式实现我们的操作。(借助第三方库seleniumwrit【感谢大佬公布的类库】)

三、实现过程

1、安装selenium-writ库
下载路径:https://pan.baidu.com/s/17SsvS3uF_G6PC7M1FIRveg
提取码:ivfz

下载之后,使用pip进行安装,
cd 文件所在目录
pip install 文件名称
此时就安装完成

2、导入使用第三方库
此类库就替代了selenium库来使用
from seleniumwire import webdriver

3、通过driver.requests来获取当前网页的所有信息头

4、筛选出我们需要的headers头,我们可以判断headers里面是否有cookie等特定的参数来实现

四、代码

import time
from seleniumwire import webdriver
from selenium.webdriver.common.by import Bydriver = webdriver.Chrome()
driver.get(url)
time.sleep(3)
driver.find_elements(By.CLASS_NAME,'el-input__inner')[0].send_keys('')
driver.find_elements(By.CLASS_NAME,'el-input__inner')[1].send_keys('')
driver.find_element(By.XPATH, '//div/div/div/button/span[text()="登录"]').click()
time.sleep(2)
agent = driver.requests
a = 1
print(agent[-2].headers)
for requests in agent:print('========================================'+ str(a)+'============================')print(requests.headers)a = a+1
driver.quit()

通过selenium获取浏览器的cookie等头部信息相关推荐

  1. python获取窗口句柄_Python+selenium 获取浏览器窗口坐标、句柄的方法

    1.0 获取浏览器窗口坐标 python目录可找到Webdriver.py 文件定义了get_window_rect()函数,可获取窗口的坐标和大小(长宽),但出现"Command not ...

  2. java+selenium 获取QQ邮箱所有邮件列表信息以及某个邮件信息(springboot)

    1.依赖 <dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selen ...

  3. JavaScript获取浏览器的显示区域大小信息

    针对IE Firefox  数值不一样 区域说明 JavaScript Code 网页可见区域宽 document.body.clientWidth 网页可见区域高 document.body.cli ...

  4. selenium获取京东前三页奶瓶信息

    1.配置好selenium环境,selenium环境配置地址如下: https://blog.csdn.net/liaoqingjian/article/details/116785445?spm=1 ...

  5. js获取浏览器和屏幕宽高等信息(转)

    虽然这些东西msdn 中都可以找到,但是为了方便查询,还是把网友的总结放了上来: 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.c ...

  6. Selenium+Browsermob-Proxy 爬虫-获取浏览器Network请求和响应(新示例)

    之前有写过一篇文章,使用Selenium+Browsermob-Proxy 获取浏览器Network请求和响应(地址:https://blog.csdn.net/qq_32502511/article ...

  7. python 模拟浏览器selenium_python爬虫:使用Selenium模拟浏览器行为

    前几天有位微信读者问我一个爬虫的问题,就是在爬去百度贴吧首页的热门动态下面的图片的时候,爬取的图片总是爬取不完整,比首页看到的少.原因他也大概分析了下,就是后面的图片是动态加载的.他的问题就是这部分动 ...

  8. python+selenium获取cookie session_Python Selenium模拟登录成功后,使用此cookie、利用requests库进行get时,提示“非法登陆”。...

    一. 步骤概述 a. 模拟登录学校选课系统(使用Selenium库登陆http://xk.suibe.edu.cn/xsxk/login.xk) b. 取得cookie后传入requests的sess ...

  9. 【javaweb】Session原理以及浏览器禁止Cookie之后服务器如何获取Session

    在web应用中打开浏览器访问一个网站,登录,浏览,到关闭浏览器,称为是一个会话.由于Http协议是无状态的,因此用户在动态页面交互信息需要一些能够保存用户信息的数据结构.这个保存用户浏览数据的数据结构 ...

最新文章

  1. Android 的NDK的Makefile编写
  2. CentOS查看CPU信息、位数、多核信息
  3. stm32之电源管理(实现低功耗)
  4. bzoj1086[SCOI2005]王室联邦
  5. VTK:相互作用之TrackballCamera
  6. 使用eclipse开发web需要搭建什么环境
  7. C++之指针探究(十九):typedef和const指针
  8. springcloud生产环境一般怎么部署_机器学习模型生产环境部署的四种系统架构总结...
  9. Apache Spark机器学习3.3 特征准备
  10. 【KG】知识图谱基本概念工程落地常见问题
  11. ps如何用创建和使用动作
  12. JAVA 学习第三天 Scanner顺序\选择\循环结构!
  13. C++数据采集软件和数据显示软件(TCP通信)
  14. 树莓派4b制作加载的FLASH文件系统并移植busybox
  15. 【NOIP2014模拟11.2A组】福慧双修
  16. http状态码301和302详解及区别——辛酸的探索之路
  17. randperm算子不支持导出onnx
  18. 2022-08-17 工作记录--Git-贮藏 和 弹出贮藏
  19. 在Altium designer21 PCB文件中统计pin数
  20. 中国隐私计算行业发展模式与投资机会评估报告2022-2028年版

热门文章

  1. node js Bluebird 简单介绍 promise 解决回调地狱
  2. 文本分类特征选择方法
  3. 2015级信管班Linux课程主页
  4. 智慧交通,网约车终端解决方案基于arm平台的展现
  5. php7.0安装windows_Windows 7 下如何配置PHP网站运行环境
  6. 导出ipython中的历史输入代码和输出结果
  7. 用python画星空的代码
  8. SSL证书常用的加密算法有哪些
  9. Websocket协议原理及Ws服务器代码实现
  10. Kafka Broker 工作流程