WebDriver提供了操作Cookie的相关方法,可以读取、添加和删除cookie信息。

WebDriver操作cookie的方法:

  • get_cookies(): 获得所有cookie信息。

  • get_cookie(name): 返回字典的key为“name”的cookie信息。

  • add_cookie(cookie_dict) : 添加cookie。“cookie_dict”指字典对象,必须有name 和value 值。

  • delete_cookie(name,optionsString):删除cookie信息。“name”是要删除的cookie的名称,“optionsString”是该cookie的选项,目前支持的选项包括“路径”,“域”。

  • delete_all_cookies(): 删除所有cookie信息。

======================================================================================================================================

from selenium import webdriver
from time import sleep driver = webdriver.Firefox() # 指定和打开浏览器 url1='http://www.baidu.com' print('==============================================================================1')
driver.delete_all_cookies() #先删除所有cookie
print(driver.get_cookies()) #打印所有cookie
print('==============================================================================2') driver.get(url1) #打开第一个网址 #也可以写成:driver.get('http://www.baidu.com')
sleep(5) print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================3') driver.add_cookie({'name':'kw','value':'selenium'}) #添加一个name为kw,内容为selenium的cookie
print(driver.get_cookie('kw')) #获取名为kw的cookie
print(driver.get_cookie('PSTM')) print('==============================================================================4') print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================5') driver.delete_cookie('kw') #删除名为kw的cookie
print(driver.get_cookies()) #打印获取到的所有cookie print('==============================================================================6') driver.delete_all_cookies() #删除所有cookie
print(driver.get_cookies()) #打印获取到的所有cookie print('==============================================================================7') print(driver.session_id) driver.quit() #关闭浏览器 或者:driver.close() ============================================================================================================================================= 执行结果:

==============================================================================1
[]
==============================================================================2
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}]
==============================================================================3
{'name': 'kw', 'value': 'selenium', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}
{'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}
==============================================================================4
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}, {'name': 'kw', 'value': 'selenium', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}]
==============================================================================5
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}]
==============================================================================6
[]
==============================================================================7
9b459781-fba6-4bd9-8cbf-43650b92f0cb

												

python+selenium操作cookie的更多相关文章

  1. Python+Selenium学习--cookie处理

    场景 有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie 的测试是无法通过白盒和集成测试完成的.webdriver 可以读取.添加和删除cookie 信息.webdrive ...

  2. selenium 操作cookie (cookie测试)

    前言 在实际的web应用中,可能会涉及到cookie测试,验证浏览器中的cookie是否正确..Cookies 验证:如果系统使用了cookie,测试人员需要对它们进行检测.如果在 cookies 中 ...

  3. selenium操作cookie

    1,登录网页,使用webdriver的get_cookies获取cookie,并保存json文件 2,读取json文件,遍历添加网站使用的每一个cookies的name,value. 使用add_co ...

  4. 1.python+selenium利用cookie,跳过验证码直接登录

    方法1 在登录时,叫代码等待一段时间,然后手动输入验证码 # coding:utf-8 from selenium import webdriver import time url = 'http:/ ...

  5. python+selenium利用cookie记住密码

    先上代码 1 from selenium import webdriver 2 from time import sleep 3 4 dr = webdriver.Chrome() 5 dr.get( ...

  6. python selenium 操作chrome

    1.下载chromedriver.exe 入在chrome 浏览器目录下 from selenium import webdriverimport os chromedriver = "C: ...

  7. Python + Selenium操作一:截图详解

    在做测试的时候,空口无凭都是白掐,特别是自动化测试的时候,更需要图片来佐证自己发现的问题 话不多说,直接进入主题,技术就是这么直白 Webdriver自带截图功能,get_screenshot_as_ ...

  8. Python+Selenium操作select下拉框

    首先需要倒入Select模块: from selenium.webdriver.support.select import Select 常用方法: 通过索引定位:select_by_index() ...

  9. selenium(四)操作cookie,伪造cookie

    简介: Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据. 常见的用途就是保留用户登陆信息,登陆时的7天免登陆,记住 ...

随机推荐

  1. /etc/fstab 下的配置参数

    第一列:分区的label或者UUID 若要查看/dev/sdb1设备的label或者UUID[root@localhost ~]# dumpe2fs -h /dev/sdb1dumpe2fs 1.42 ...

  2. 大数据之Linux

    1 Linux的入门 1.1 概述 Linux内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上出于个人爱好而编写的. Linux是一套免费使用和自由传播的类Unix操 ...

  3. iOS消息通知Notification的用法

    1.发送消息 NSNotification *notification = [NSNotification notificationWithName:@"selectPosition&quo ...

  4. 【转】Linux逻辑卷管理

    一. 前言 LVM是逻辑卷管理(Logical Volume Manager)的简称,它是建立在物理存储设备之上的一个抽象层,允许你生成逻辑存储卷,与直接使用物理存储在管理上相比,提供了更好灵活性.L ...

  5. .net reactor 加密混淆使用办法

    https://www.cnblogs.com/bile/p/10250888.html 概述:安装了.net reactor之后,可以在安装目录下找到帮助文档REACTOR_HELP.chm,目前没 ...

  6. sh_06_函数的返回值

    sh_06_函数的返回值 def sum_2_num(num1, num2): """对两个数字的求和""" result = num1 + ...

  7. 指定文件或文件夹直接提交到svn指定目录

    我这里先说两种方法第一种:1.先将那个目录checkout下来2.将要添加的文件或者文件夹放到这个目录中3.右击文件执行svn菜单中的add命令4.右击文件执行svn菜单中的commit命令第二种:如 ...

  8. Android中播放声音

    在Android系统中,有两种播放声音的方式,一种是通过MediaPlayer,另外一种是通过SoundPool.前者主要用于播放长时间的音乐,而后者用于播放小段小段的音效,像按键音这种,其优点是资源 ...

  9. Linux安装vsftpd及配置详解

    1 安装vsftpd组件 安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件.[root@bogon ~]# yum -y install vsftpd 2.FT ...

  10. springBoot+springSecurity 数据库动态管理用户、角色、权限(二)

    序: 本文使用springboot+mybatis+SpringSecurity 实现数据库动态的管理用户.角色.权限管理 本文细分角色和权限,并将用户.角色.权限和资源均采用数据库存储,并且自定义滤 ...