Selenium with Python 007 - Cookie处理
Webdriver 读取、添加、删除cookie信息基本用法
- 获得Cookie信息:driver.get_cookies()
- 添加Cookie信息:driver.add_cookie(cookie_dict)
- 删除特定Cookie:delete_cookie(name)
- 删除所有Cookie:delete_all_cookies()
实例演示WebDriver Cookie操作
#!/usr/bin/env python
# -*- coding: utf-8 -*- from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.baidu.com") # 获取所有Cookie
cookies = driver.get_cookies()
print("打开百度首页后获取所有Cookie:%s" % cookies) # 删除所有Cookie值
driver.delete_all_cookies()
print("删除所有Cookie后获取所有Cookie:%s" % driver.get_cookies()) # 添加Cookie
driver.add_cookie({'name': 'user', 'value': 'ptqa'})
driver.add_cookie({'name': 'from', 'value': ''})
print("添加Cookie后,获取所有Cookie:%s " % driver.get_cookies()) # 获取特定Cookie
user = driver.get_cookie("user")
print("添加Cookie后,获取对应特定Cookie对象:%s " % user)
if user:
print("添加Cookie后,获取对应特定Cookie的键值:%s->%s " % (user["name"], user["value"])) # 删除特定Cookie
driver.delete_cookie("user")
print("删除特定Cookie user后,查看所有Cookie:%s" % driver.get_cookies()) driver.close()
运行输出结果如
打开百度首页后获取所有Cookie:[{'secure': False, 'name': 'H_PS_PSSID', 'domain': '.baidu.com', 'path': '/', 'httpOnly': False, 'value': '1453_21085_23384_20930'}, {'expiry': 3652321614.105473, 'secure': False, 'name': 'BAIDUID', 'domain': '.baidu.com', 'path': '/', 'httpOnly': False, 'value': 'D99013DD2F470724CC4CDDE361CD7606:FG=1'}, {'expiry': 3652321614.105604, 'secure': False, 'name': 'PSTM', 'domain': '.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}, {'expiry': 3652321614.10557, 'secure': False, 'name': 'BIDUPSID', 'domain': '.baidu.com', 'path': '/', 'httpOnly': False, 'value': 'D99013DD2F470724CC4CDDE361CD7606'}, {'expiry': , 'secure': False, 'name': 'BD_UPN', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}, {'expiry': 1504837968.105635, 'secure': False, 'name': 'BD_LAST_QID', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}, {'secure': False, 'name': 'BD_HOME', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}]
删除所有Cookie后获取所有Cookie:[]
添加Cookie后,获取所有Cookie:[{'expiry': , 'secure': False, 'name': 'user', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': 'ptqa'}, {'expiry': , 'secure': False, 'name': 'from', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}]
添加Cookie后,获取对应特定Cookie对象:{'expiry': , 'secure': False, 'name': 'user', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': 'ptqa'}
添加Cookie后,获取对应特定Cookie的键值:user->ptqa
删除特定Cookie user后,查看所有Cookie:[{'expiry': , 'secure': False, 'name': 'from', 'domain': 'www.baidu.com', 'path': '/', 'httpOnly': False, 'value': ''}]
***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***
Selenium with Python 007 - Cookie处理的更多相关文章
- Selenium + PhantomJS + python 简单实现爬虫的功能
Selenium 一.简介 selenium是一个用于Web应用自动化程序测试的工具,测试直接运行在浏览器中,就像真正的用户在操作一样 selenium2支持通过驱动真实浏览器(FirfoxDrive ...
- selenium webdriver (python) 第二版
前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...
- selenium webdriver (python)2
selenium webdriver (python) 第二版 前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发 ...
- selenium webdriver (python)大全
webdriver的简介 硒2.0的主要新功能是集成的webdriver的API.webdriver的设计除了解决一些seleniumr-RC API的一些限制,与webdriver 的整合,将提供一 ...
- Selenium基于Python 进行 web 自动化测试
配置使用环境 下载相应的浏览器驱动, Firefox 是默认的 本文以 chrome 为主 ,放在scripts目录下ChromeDriver 官方下载地址 : 所有版本的 ChromeDriver ...
- 【转】Selenium WebDriver + Python 环境
转自:http://www.myext.cn/webkf/a_11878.html 1. 下载必要工具及安装包 1.1 [Python开发环境] 下载并安装Python 2.7.x版本 下载地址:ht ...
- selenium webdriver (python) 第三版
感谢 感谢购买第二版的同学,谢谢你们对本人劳动成果的支持!也正是你们时常问我还出不出第三版了,也是你们的鼓励,让我继续学习整理本文档. 感谢乙醇前辈,第二版的文档是放在他的淘宝网站上卖的,感谢他的帮忙 ...
- Selenium WebDriver + Python 环境配置
1. 下载必要工具及安装包 1.1.[Python开发环境] 下载并安装Python 2.7.x版本(当前支持2.x版本,不要下载最新的3.X的版本因为python3并非完全兼容python2) ...
- Python中Cookie的处理(一)Cookie库
Cookie用于服务器实现会话,用户登录及相关功能时进行状态管理.要在用户浏览器上安装cookie,HTTP服务器向HTTP响应添加类似以下内容的HTTP报头: Set-Cookie:session= ...
随机推荐
- IO流入门-第十章-DataInputStream_DataOutputStream
DataInputStream和DataOutputStream基本用法和方法示例 /* java.io.DataOutputStream 数据字节输出流,带着类型写入 可以将内存中的“int i = ...
- MyBatis 之动态SQL
1. 概述 动态 SQL 极大的简化了我们拼装SQL的操作; MyBatis 采用功能强大的基于 OGNL 的表达式来简化操作: if choose(when,otherwise) trim(wher ...
- 基于vue + typescrpt +vuecli 搭建开发环境
打算学习typeScript与vue集成,先放几个链接,留着自己学习用,后续自己写使用新的~ https://segmentfault.com/a/1190000013676663 https://j ...
- 【我的Android进阶之旅】 解决bug: Expected file scheme in URI: content://downloads/my_downloads/12
一.错误描述 今天测试MM用HTC手机测试某个模块的时候crash了,抓log后发现是使用DownloadManager下载apk安装包然后自动安装的时候,抛了异常:java.lang.Illegal ...
- mysql聚合函数操作
1.mysql对中文进行排序 注:是用convert函数用gb2312编码转换 SELECT * FROM 表名 ORDER BY CONVERT(字段名 USING gb2312 ) ASC;
- python删除所有的中文字符、非ASCII或非英文字符,检查字符串是否包含非ASCII
Your ''.join() expression is filtering, removing anything non-ASCII; you could use a conditional exp ...
- 为Eclipse指定JVM
运行eclipse时,报如下错误时,可以通过修改配置文件eclipse.ini来解决. Version 1.4.1_01 of the JVM is not suitable for this pro ...
- arcgis中给属性文件加x y坐标
两种方式: 一, 1在ArcGIS 9.2桌面软件arcview级别以上软件中,加载要添加x,y坐标的数据,打开属性表,添加X.Y字段 2 右键X字段,选择calculate geometry,如果颜 ...
- cdoj1328卿学姐与诡异村庄
地址:http://acm.uestc.edu.cn/#/problem/show/1328 题目: 卿学姐与诡异村庄 Time Limit: 4500/1500MS (Java/Others) ...
- DateTable To Json
private string aaaa(DataTable dt) { JavaScriptSerializer javaScriptSerializer = new JavaScriptSerial ...