现在有很多网站有验证码,跳过验证码实现登录可以使用cookies登录

目录

1、webdriver的添加cookies的方法

2、举个栗子

1、webdriver的添加cookies的方法

webdriver.add_cookie()  #用add_cookies方法添加需要的cookies信息

一般情况下,填写name和values值就可以,格式如下:

c1={u'name':‘XX’,
u'value':XX} 
如果仅填写name和value登录不了,则可以继续添加其他的
 c1 = {u'domain': u'XX',
u'name': u'XX',
u'value': u'XX',
u'expiry': 1533197286, #时间戳
u'path': u'/',
u'httpOnly': True, #防脚本攻击
u'secure': True} 在Cookie中标记该变量,表明只有当浏览器和Web Server之间的通信协议为加密认证协议时,浏览器才向服务器提交相应的Cookie。当前这种协议只有一种,即为HTTPS

  

2、举个栗子

第一步:访问需要登录后才能访问的页面

driver=webdriver.Firefox()
driver.get("https://www.eolinker.com/#/home/project/api/") #需要登录后才能访问的一个接口  

第二步:使用fiddler抓取登录后的cookies

登录前:

登录后:

第三步:添加cookies

c1={u'name': u'userToken',
u'value':u'%242y%2410%24peAtYKJZVoYsbnWyksn3Nep2q5KS5LpJdJWZ7cq3s3TFH83A5yxz2'}
c2={u'name': u'verifyCode',
u'value': u'4dacda8241457041ad4846ac23b8b023'} driver.add_cookie(c1)
driver.add_cookie(c2)

 第四步:刷新页面,看到的就是登录后的页面

time.sleep(3)
driver.refresh()

  代码如下:

# coding:utf-8

from selenium import webdriver
import time
driver=webdriver.Firefox()
driver.get("https://www.eolinker.com/#/home/project/api/") #需要登录后才能访问的一个接口
# 第一步:一般的用name和value就够了
c1={u'name': u'userToken',
u'value': u'%242y%2410%24peAtYKJZVoYsbnWyksn3Nep2q5KS5LpJdJWZ7cq3s3TFH83A5yxz2'}
c2={u'name': u'verifyCode',
u'value': u'4dacda8241457041ad4846ac23b8b023'} driver.add_cookie(c1)
driver.add_cookie(c2) time.sleep(3)
driver.refresh() #刷新页面,这时候看到的就是登录后看到的页面
time.sleep(3)
driver.close()

  

UI自动化之cookies登录的更多相关文章

  1. IDEA+java通过SSH来进行分析日志,实现UI自动化动态验证码登录

    在我写自动化脚本的时候是要真实发送验证码才能往下进行UI自动化 思路:验证码会显示在哪些地方,手机短信?数据库存储?日志? 完整代码如下: package guanyu.tools; import c ...

  2. 接口自动化之cookies登录

    现在有很多网站有验证码,跳过验证码实现登录可以使用cookies登录 目录 1.requests的添加cookies的方法 2.举个栗子 1.requests的添加cookies的方法 request ...

  3. selenium自动化 | 通过获取cookies登录

    >>>登录百度<<<#获取登录成功后的cookies def get_cookies(): driver.get(bd_url) driver.implicitly ...

  4. robot framework UI自动化之登录

    前面已写环境的搭建,接下来就可以直接进行UI自动化的编写工作了 目录 1.准备工作 2.了解定位 3.一个登录案例 1.准备工作 第一步:需要使用chrome浏览器来测试,因此首先要有一个驱动,下载好 ...

  5. ui自动化笔记 selenium_webdriver,ui自动化框架(web)

    Selenium学习笔记 selenium webdriver是业界公认ui自动化测试的标准,其封装的api可以对浏览器的任何地方进行操作 selenium2.0和selenium3.0的区别? 3. ...

  6. 【Android测试】UI自动化代码优化之路(临时发布, 随时删除)

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5993622.html 关于UI自动化的抱怨 听过不少人这样 ...

  7. Appium UI自动化的那些梗

    @作者 彭海波 转载请注明出处 前言 由于需求的快速迭代和敏捷测试的要求,在测试过程中引入自动化成为必不可少的手段.作为一个互联网测试团队,我们自然也引入了自动化测试这个环节.在众多的测试框架中,我们 ...

  8. 洗清UI自动化鸡肋说的不白之冤

    人类文明发展的一个重要标识是工具的诞生,当人类开始制作工具来提高生产力时,就逐渐拉开了与其他生物的距离.曾在2013年,<Google如何测试软件>中提到的分层自动化金字塔,轰动业界.而在 ...

  9. 基于Selenium2+Java的UI自动化(4) - WebDriver API简单介绍

    1. 启动浏览器 前边有详细介绍启动三种浏览器的方式(IE.Chrome.Firefox): private WebDriver driver = null; private String chrom ...

随机推荐

  1. ODBC Driver Development

    ODBC Driver Development By Vikash Agarwal, May 01, 2002 Open your database system to the world. Vika ...

  2. 最新版 Mysql 8.0.16 创建用户权限更新回收权限

    1.创建用户语法 : create user ‘写你自己的用户名’@‘写你需要哪个IP连接你的用户(%表示所有)’ identified by ‘密码’; 案例: create user ‘wangx ...

  3. El 表达式和 Jstl 标签库

    El 表达式学习 1. 什么是 EL 表达式 全称:Expression Language,一种写法非常简介的表达式.语法简单易懂,便于使用.表达式语言的灵感来自于 ECMAScript 和XPath ...

  4. HDU 6631 line symmetric(枚举)

    首先能想到的是至少有一对相邻点或者中间间隔一个点的点对满足轴对称,那么接下来只需要枚举剩下的点对是否满足至多移动一个点可以满足要求. 第一种情况,对于所有点对都满足要求,那么Yes. 第二种情况,有一 ...

  5. 如何在CentOS 7上安装newman

    前提:先安装nodejs,详见:如何在CentOS 7上安装Node.js和npm #sudo npm install -g newman 结果: /usr/local/bin/newman -> ...

  6. 【摘】sizeof实现

    注意sizeof是运算符,而非函数 关于sizeof的两个精巧的宏实现. 非数组的sizeof: #defne _sizeof(T) ( (size_t)((T*)0 + 1)) 数组的sizeof: ...

  7. Django - Xadmin (三) 分页、搜索和批量操作

    Django - Xadmin (三) 分页.搜索和批量操作 分页和 ShowList 类 因为 list_view 视图函数里面代码太多,太乱,所以将其里面的用于处理表头.处理表单数据的关键代码提取 ...

  8. C# 中常见的控件以及功能

    1.StatusBar控件——显示各种状态信息. StatusBar控件可以有状态栏面板(用于显示图标以指示状态)或一系列动画图标(用于指示某个进程正在工作,例如,表示正在保存文档的 Microsof ...

  9. python学习笔记(7): 面向对象

    class Foo: #类中的函数 def bar(self): #功能阐述 print('Bar') pass def hello(self,name): print('i am %s' %name ...

  10. 02tensorflow非线性回归以及分类的简单实用,softmax介绍

    import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # 使用numpy生成200个随机点 x_data ...