首页
学习
活动
专区
圈层
工具
发布
20 篇文章
1
船长带你看书——《selenium2 python 自动化测试实战》(1)
2
船长带你看书——《selenium2 python 自动化测试实战》(2)
3
《selenium2 python 自动化测试实战》(3)——操作测试对象
4
《selenium2 python 自动化测试实战》(4)——鼠标事件
5
《selenium2 python 自动化测试实战》(5)——键盘事件
6
《selenium2 python 自动化测试实战》(6)——打印信息和设置等待时间
7
《selenium2 python 自动化测试实战》(7)——定位一组对象
8
《selenium2 python 自动化测试实战》(8)——定位iframe
9
《selenium2 python 自动化测试实战》(9)——切换窗口
10
《selenium2 python 自动化测试实战》(10)——下拉框和alert
11
《selenium2 python 自动化测试实战》(11)——selenium安装版本
12
《selenium2 python 自动化测试实战》(12)——跳过验证码登录add_cookie
13
《selenium2 python 自动化测试实战》(13)——上传文件
14
《selenium2 python 自动化测试实战》(14)——下载文件
15
《selenium2 python 自动化测试实战》(16)——js操作补充
16
《selenium2 python 自动化测试实战》(17)——几个cookies操作
17
《selenium2 python 自动化测试实战》(18)——自动化测试模型(一)
18
《selenium2 python 自动化测试实战》(18)——webdriver错误截图
19
《selenium2 python 自动化测试实战》(19)——Selenium工具介绍
20
《selenium2 python 自动化测试实战》(20)——unittest单元测试框架解析

《selenium2 python 自动化测试实战》(17)——几个cookies操作

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

代码语言:javascript
代码运行次数:0
复制
# 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()

以百度为例:

代码语言:javascript
代码运行次数:0
复制
# 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提示“正在被自动化软件使用”提示语那个——你还记得吗:

代码语言:javascript
代码运行次数:0
复制
options = webdriver.ChromOptions()
options.add_argument('disable-infobars')
d = webdriver.Chrome(chrome_options=options)

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

下一篇
举报
领券