之前我们已经学过利用cookies跳过验证码登录了,那时候我们用的方法是add_cookie()方法,这里再给大家介绍两个,一般情况下我们用不到,了解一下就可以,而且如果真的用到的时候百度也很快的:

# coding: utf-8

from selenium import webdriver
from time import sleep d = webdriver.Firefox()
d.get("https://www.yiyao.cc")
# 看一下登录前的cookie
print d.get_cookies() d.add_cookie({'name': '_ui_',
             'value': '+f8a02ljlfcnpYmw==',
             'Domain': 'yiyao.cc'})
d.add_cookie({'name': '_ut_',
             'value': 'otrftkqcJoQ4F2Q==',
             'Domain': 'yiyao.cc'}) sleep(3)
d.refresh()
sleep(2)
# 看一下登录后的cookie
print d.get_cookies()

给大家推荐一个很好用的软件和对应的插件:

这个,而且要下这个版本的,因为我就会用这个版本下插件:

下载一个JSTool的插件,插件很多,只能慢慢找这个,下载好了以后,格式化json是非常方便的,Ctrl+alt+m就可以切换成标准格式的json:

至于那些删除cookie(delete_cookie('key'))或者删除所有cookies(delete_all_cookies())就不用说了,谁闲着没事删cookies啊。

获取对象属性

还有一个就是查看对象属性:get_attribute()

以百度为例:

# coding: utf-8

from selenium import webdriver
d = webdriver.Firefox()
d.get("https://www.baidu.com")
print d.get_cookies()
# 定位新闻
attri = d.find_element_by_xpath(".//*[@id='u1']/a[1]")
# 打印class属性值
print attri.get_attribute('class')
# 打印文字内容
print attri.text

可以看到打印的内容是:

到此为止,我们selenium基础部分就算是结束了,如果你把我讲的这些都弄懂了,感觉就差不多了,因为我最熟悉的也就是到此为止讲的这些知识,不知道大家学的怎么样,对我来说我觉得很好的复习了一边,尤其是跳过验证码登录那里,以前我也不会,还有去掉chrome提示“正在被自动化软件使用”提示语那个——你还记得吗:

options = webdriver.ChromOptions()
options.add_argument('disable-infobars')
d = webdriver.Chrome(chrome_options=options)

接下来的东西就会系统一些,“框架”一些了,大家继续和船长一起加油~~~

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

《selenium2 python 自动化测试实战》(17)——几个cookies操作的更多相关文章

  1. selenium2 python自动化测试实战(回归测试)

    selenium2 python自动化测试实战 最近接手商城的项目,针对后台测试,功能比较简单,但是流程比较繁多,涉及到前后台的交叉测试.在对整个项目进行第一轮测试完成之后,考虑以后回归测试任务比较重 ...

  2. 船长带你看书——《selenium2 python 自动化测试实战》(1)

    有很多selenium的教程,你没有从头看,当你看的时候已经很难跟上作者的节奏了.现在,你有机会再从头学一次了.从今天开始,船长会从最基本的知识开始,和大家一起学selenium.能不能跟着一起就看大 ...

  3. Selenium2+Python自动化测试实战

    本人在网上查找了很多做自动化的教程和实例,偶然的一个机会接触到了selenium,觉得非常好用.后来就在网上查阅各种selenium的教程,但是网上的东西真的是太多了,以至于很多东西参考完后无法系统的 ...

  4. 《selenium2 python 自动化测试实战》(13)——上传文件

    看代码: # coding: utf-8 from selenium import webdriver from time import sleep driver = webdriver.Firefo ...

  5. 《selenium2 python 自动化测试实战》(7)——定位一组对象

    定位一组对象 定位一组对象——find_elements_by_...(),注意,这里是elements,复数.返回的结果是一个列表,我们取值的时候就要用列表取值的方式来获得自己想要的元素.需要注意的 ...

  6. 《selenium2 python 自动化测试实战》(4)——鼠标事件

    鼠标事件包含在ActionChains类中,导入时只需要: from selenium.webdriver.common.action_chains import ActionChains 导入类即可 ...

  7. 船长带你看书——《selenium2 python 自动化测试实战》(2)浏览器操作

    浏览器操作 # coding: utf-8 from selenium import webdriver from time import sleep driver = webdriver.Firef ...

  8. 《selenium2 python 自动化测试实战》(21)——unittest单元测试框架解析

    unittest是展开自动化测试的基础——这个框架很重要! 我们先自己写一个测试类: 1.被测试类 Widthget.py: # coding: utf-8 class Widthget:    de ...

  9. 《selenium2 python 自动化测试实战》(20)——Selenium工具介绍

    (一)Selenium IDE Firefox的一个插件,有助于我们理解测试框架.在附加组件里搜索下载,一般搜的结果里前几个都不是,得点那个查看更多才行,找到这个: 安装以后浏览器工具栏会有: 安装好 ...

随机推荐

  1. canvas drawimage绘制图像出错(默认canvas300*150)解决办法

    今天在开发中,再一次踩了以前踩过的坑,写完程序在这里写一下,分享给大家也避免再次遇坑. //默认的canvas <canvas id ="canvas"></ca ...

  2. angular-cli 工程中使用scss文件

    angular/cli支持使用sass 新建工程: 如果是新建一个angular工程采用sass: ng new My_New_Project --style=sass 这样所有样式的地方都将采用sa ...

  3. [Vue]Scoped Css与Css Modules的区别

    均为解决CSS全局作用域问题(样式冲突(污染))的一个解决方案. 1.Scoped CSS 当 <style> 标签有 scoped 属性时,相当于在元素中添加了一个唯一属性用来区分. & ...

  4. ubuntu下python安装pandas和numpy等依赖库版本不兼容的问题RuntimeWarning: numpy.dtype size changed

    习惯了linux下用pip install numpy及pip install pandas命令了.折腾了好久了. 上来先在python3中pip3 install numpy装了numpy,然后再p ...

  5. Mysql解压版配置环境等

    背景故事:安装版的mysql和我的本本有仇,最后一步老卡死 1.首先先把下载好的压缩包解压,如下图:

  6. The tilde ( ~ ) operator in JavaScript

    From the JavaScript Reference on MDC, ~ (Bitwise NOT) Performs the NOT operator on each bit. NOT a y ...

  7. AtCoder Regular Contest 078D

    两边bfs,先一边找到从1到n的路径并记录下来,然后挨个标记,最后一边bfs找1能到达的点,比较一下就行了 #include<map> #include<set> #inclu ...

  8. MongoDB 3.4 分片 由副本集组成

    要在真实环境中实现MongoDB分片至少需要四台服务器做分片集群服务器,其中包含两个Shard分片副本集(每个包含两个副本节点及一个仲裁节点).一个配置副本集(三个副本节点,配置不需要仲裁节点),其中 ...

  9. C# - Generics泛型,一图话c#泛型

    一.一篇好文 https://www.cnblogs.com/yueyue184/p/5032156.html 二.一幅好图

  10. Java截取图片的一部分并保存为40*40的图片

    @Test public void testImag() { try { String path = "E:/flower2.jpg"; int x = 11, y = 20, c ...