Python_Cookie处理
前言:
通过向浏览器添加cookie可以绕过登录的验证码,在用户登录之前,通过add_cookie()方法将用户名和密码写入cookie,使用该方法最大难点是如何获取用户名和密码的cookie信息,可以通过get_cookies()或者询问开发解决此问题。
1、cookie常用函数
1.1、get_cookies():获取所有cookie信息
driver.get_cookies()#获取所有cookie信息
1.2、get_cookie(name):返回特定name有cookie信息
driver.get_cookie("theme")#根据cookie中的name对应的值,获取cookie信息
1.3、add_cookie(cookie_dic):添加cookie,必须有name和value值
driver.add_cookie({'name':'device','value':'desktop','path':'/zentao/www/','domain':'47.107.178.45'})
1.4、delete_cookie(name):删除特定部分的cookie信息
driver.delete_cookie("theme")#根据cookie中的name对应的值,删除cookie信息
1.5、delete_all_cookies():删除所有cookie信息
driver.delete_all_cookies()#删除所有cookie信息
2、cookie获取方式
2.1、方式一:通过浏览器方式获取
谷歌浏览器:
火狐浏览器:
备注:以下代码是以博客园进行举例
2.1.1、启动浏览器
2.1.2、复制浏览器的cookie信息到python代码中执行
2.2、方式二:打开验证码页--等待30s --手工输入用户名、密码、验证码、点击提交按钮 --打印所有的cookie信息
2.2.1、手动输入用户名、密码、验证码,点击登录成功后通过get_cookies()获取cookie信息
2.2.2、根据获取的cookie信息通过add_cookie()函数添加
3、实战:根据获取的cookie信息跳过登录,结合Excel实现(备注:以下代码是以博客园进行举例)
3.1、打开验证码页 --等待30s --手工输入用户名、密码、验证码、点击提交或登录 -- 保存到excel
3.3.1、手动输入用户名、密码、验证码,点击登录成功后通过get_cookies()获取cookie信息
3.3.2、导入第三方模块xlwt创建excel表且保存cookie信息(备注:第三方模块可以通过pip install xlwt添加)
3.3.3、导入第三方模块xlrd在已经创建的excel表中读取cookie信息(备注:第三方模块可以通过pip install xlrd添加)
3.3.4、添加并刷新已读取的cookie信息
金鳞岂是池中物,一遇风云便化龙。