使用场景:

测试过程中,有的时候需要登录才可以进行其他操作

举例说明:

 # coding=utf-8
 """
 :author: 花花测试
 :time: 2017.05.03
 :content: 登录操作
 """

 from selenium import webdriver
 import time

 class Login:
     driver = None

     def __init__(self):
         self.driver = webdriver.Chrome()
         self.driver.implicitly_wait(10)
         self.driver.get('http://www.kgc.cn')
         self.driver.maximize_window()

     def login(self, username, password):
         """
         点击登录按钮,进入登录界面
         输入用户名、密码登录

         :param str username: 用户名
         :param str password: 密码

         :return:
         """
         time.sleep(3)
         self.driver.find_element_by_link_text('登录').click()
         time.sleep(3)

         self.driver.find_element_by_id('KgcForm_models_LoginForm_identity').send_keys(username)
         self.driver.find_element_by_id('KgcForm_models_LoginForm_password').send_keys(password)
         self.driver.find_element_by_id('login').click()
         return {'username': username, 'password': password}

     def run(self):
         """
         定义用户名、密码,并进行登录

         :return:
         """
  
         self.login(username='请输入您的用户名', password='请输入您的密码')
         time.sleep(5)

         self.driver.quit()

 if __name__ == '__main__':
     login = Login()
     login.run()

说明:

1、把登录的相关操作封装到login函数,需要的时候直接调用,传入参数即可

2、我的脚本都是以课工场为例,如果有什么不明白的地方,欢迎大家留言,我看的话会及时给大家解答

3、辛苦原创,转载请注明出处

python3 selenium 登录操作的更多相关文章

  1. selenium如何操作cookies实现免登录

    执行接口测试或者某些自动化测试时,为了避免每次访问接口都需要登录操作,可以用访问接口时,把cookies信息传过去. 思路是先登录一次页面,获取到cookies信息,把cookies信息保存到本地文件 ...

  2. Python3 Selenium定位不到元素常见原因及解决办法

    Python3 Selenium定位不到元素常见原因及解决办法 一.问题描述 在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况: 报错信息: no such e ...

  3. Python3+Selenium获取session和token供Requests使用教程

    一.背景说明 之前写了一款简单的api模糊测试工具,之前系统可以使用http Base认证现在改成session形式并加上了token. 最简单的改造方法,是自己先在浏览器手动登录,然后提取出sess ...

  4. python3+selenium框架设计02-自动化测试框架需要什么

    什么是自动化测试框架 自动化测试框架能够提供便利给用户高效完成一些事情,比如,结构清晰开发脚本,多种方式.平台执行脚本,良好的日志和报告去跟踪脚本执行结果. 关于自动化测试框架的定义有很多,在我大致理 ...

  5. Selenium Webdriver——操作隐藏的元素(四)

    页面上弹出的对话框是自动化测试经常会遇到的一个问题:很多情况下对话框是一个iframe,如上一节中介绍的例子,处理起来稍微有点麻烦:但现在很多前端框架的对话框是div 形式的,这就让我们的处理变得十分 ...

  6. Python3 Selenium WebDriver网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作

    Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdr ...

  7. python3+selenium获取列表某一列的值

    python3+selenium获取列表某一列的值 我们在坐自动化测试时,我们可能不想单纯的想验证一个选项卡,我们让脚本随机选择一个选项进行接下来的操作.例如我们想获取列表某一列的某一个数据(随机的) ...

  8. Python3+selenium 报错处理:“selenium.common.exceptions.NoAlertPresentException: Message: No alert is active”

    一.说明 在使用python3+selenium写自动升级程序的时侯,碰到一个弹出对话框需要点击确认的场景.弹出的对话框如下图所示. 对于弹框各种资料都说通过switch_to.alert属性获取对话 ...

  9. python3 selenium模块Chrome设置代理ip的实现

    python3 selenium模块Chrome设置代理ip的实现 selenium模块Chrome设置代理ip的实现代码: from selenium import webdriver chrome ...

随机推荐

  1. NOI全国赛(2001)--食物链

    今天写了道并查集的题,看来并查集的题刷少了,,,,,用法好神奇啊!!!开三倍并查集 用i表示自己,i+n存天敌,i+2*n存可以克制de,再逻辑判断一下即可. 所以,要意识到并查集的分类处理可以开不同 ...

  2. SpringMVC中@RequestBody引起的400异常处理,返回校验失败具体信息

    问题 使用@RequestBody接收一个json数据的时候,如果传入的参数不符合条件,就会直接返回400的error page. 但究竟是为什么会400并没有抛出来.这对大量参数字段的我们来说,排错 ...

  3. Git远程仓库(二)

    昨天讲了Git安装使用和基本的命令,今天我说一下如何通过Git将本地管理的仓库添加到远程库 首先我们需要在www.github.com(如果打不开网页,请注意科学上网)上注册一个免费的账号,邮箱验证完 ...

  4. 关于npm安装全局模块,require时报Error: Cannot find module 'XXX'的解决办法

    系统环境:centos 下午使用npm安装"cheerio",想搞爬虫玩玩. npm安装有两种模式: 本地 # npm install cheerio 全局 # npm insta ...

  5. Failed to connect to Xilinx hw_server. Check if the hw_server is running and correct TCP port is used.

    Failed to connect to Xilinx hw_server. Check if the  hw_server is running and correct TCP port is us ...

  6. 分类算法——k最近邻算法(Python实现)(文末附工程源代码)

    kNN算法原理 k最近邻(k-Nearest Neighbor)算法是比较简单的机器学习算法.它采用测量不同特征值之间的距离方法进行分类,思想很简单:如果一个样本在特征空间中的k个最近邻(最相似)的样 ...

  7. 新人报道~cnblogs

    我的名字:杨先生 我的英文名:Allen 和你们一样,是一名程序猿,专业技能  C#.前端小块.

  8. centos6.5 源码安装 gtk 环境

    解决 No package 'gtk+-2.0′ found问题方法:yum install libgnomeui-devel 执行了上面的,下面的就可以放弃了,yum 大法好 首先 yum 安装下面 ...

  9. .NET Core开源组件:后台任务利器之Hangfire

    一.简述 Hangfire作为一款高人气且容易上手的分布式后台执行服务,支持多种数据库.在.net core的环境中,由Core自带的DI管理着生命周期,免去了在NF4.X环境中配置always ru ...

  10. Swift开发

    1. 模糊效果 iconImageView.image = UIImage(named: "1.png") //效果类实例 let blurEffect = UIBlurEffec ...