python爬虫token_Python3使用Selenium获取session和token方法详解

一、背景说明

之前写了一款简单的api模糊测试工具,之前系统可以使用http Base认证现在改成session形式并加上了token。

最简单的改造方法,是自己先在浏览器手动登录,然后提取出session和token(系统token在整个会话期间可重复使用)填到模糊测试工具中即可。但这种非全自动化的方式不到万不得已不想用。

最直接的方法,最使用requests按登录流程依次发包登录即可。但其中的难点是密码是加密提交的,询问开发人员说是DES加密;DES加密不难,但是用不同的语言编写的加密算法与别人的结果完全一致那就比较费工夫。

最后的方法,那就是使用selenium登录避开密码的构造,这种方法的关键点在于:selenium是基于图形界面操作的,没有直接的办法能获取request和response的数据包,在这种情况下如何获取session和token。

自己动web前端的存储并没有很深入了解,一直想的是如何获取selenium request和response的数据包从中提取session和token,直到看到这篇文章才想起前端的变量(尤其是restful中的全局变量)会放存localStorage和sessionStorage中,从中提取session和token即可。

二、环境搭建

2.1 下载驱动

下载驱动文件,放到后续python文件同级目录下或加入到环境变量中即可。其中Chrome驱动要注意Driver版本与浏览器版本对应要求。

Firefox驱动下载地址:https://github.com/mozilla/geckodriver/releases

Chrome驱动下载地址:http://chromedriver.chromium.org/downloads<

你可能感兴趣的:(python爬虫token)