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

使用场景: 测试过程中,有的时候需要登录才可以进行其他操作 举例说明: # 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.Chrom…
执行接口测试或者某些自动化测试时,为了避免每次访问接口都需要登录操作,可以用访问接口时,把cookies信息传过去. 思路是先登录一次页面,获取到cookies信息,把cookies信息保存到本地文件,以后再访问页面时直接拿本地的cookies文件传过去 package com.gmsd; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileIn…
Python3 Selenium定位不到元素常见原因及解决办法 一.问题描述 在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况: 报错信息: no such element: Unable to locate element: {"method":"xpath","selector":"xpath"} 二.分析以及解决方案 1,原因一以及解决方案 (1)原因: Frame/Iframe原…
一.背景说明 之前写了一款简单的api模糊测试工具,之前系统可以使用http Base认证现在改成session形式并加上了token. 最简单的改造方法,是自己先在浏览器手动登录,然后提取出session和token(系统token在整个会话期间可重复使用)填到模糊测试工具中即可.但这种非全自动化的方式不到万不得已不想用. 最直接的方法,最使用requests按登录流程依次发包登录即可.但其中的难点是密码是加密提交的,询问开发人员说是DES加密:DES加密不难,但是用不同的语言编写的加密算法与…
什么是自动化测试框架 自动化测试框架能够提供便利给用户高效完成一些事情,比如,结构清晰开发脚本,多种方式.平台执行脚本,良好的日志和报告去跟踪脚本执行结果. 关于自动化测试框架的定义有很多,在我大致理解下就是把能实现不同功能的软件组合在一起,实现特定的目的,这就是一个简单的自动化测试框架. 界面自动化测试框架核心是选择 一个用来编写脚本的语言,一个用来web界面的库,管理脚本的执行工具.这里选择python,web界面库用的selenium,脚本管理工具可以用unittest单元测试框架.测试报…
页面上弹出的对话框是自动化测试经常会遇到的一个问题:很多情况下对话框是一个iframe,如上一节中介绍的例子,处理起来稍微有点麻烦:但现在很多前端框架的对话框是div 形式的,这就让我们的处理变得十分简单. 上图为百度首页的登录对话框,下面通过脚本对百度进行登录操作: #coding=utf-8from selenium import webdriverdriver = webdriver.Firefox()driver.get("http://www.baidu.com/")#点击登…
Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdriver操作网页前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作: from selenium import webdriver #打开浏览器 driver = webdriver.Ie(executable_path = "e:\\IED…
python3+selenium获取列表某一列的值 我们在坐自动化测试时,我们可能不想单纯的想验证一个选项卡,我们让脚本随机选择一个选项进行接下来的操作.例如我们想获取列表某一列的某一个数据(随机的)进行操作时,我们该怎么操作? 请看下面的列表,获取列表的所有运单号 html代码 我们可以选择xpath通过进行定位,当然这个方法只能定位到一个单号,但是我们要获取的是当前列表的所有单号. 我们复制下来的小path 的内容是                                     …
一.说明 在使用python3+selenium写自动升级程序的时侯,碰到一个弹出对话框需要点击确认的场景.弹出的对话框如下图所示. 对于弹框各种资料都说通过switch_to.alert属性获取对话框对象,然后使用该对象的accept()方法点击确认. 但使用该方法,一直报错:“selenium.common.exceptions.NoAlertPresentException: Message: No alert is active”,截图如下: 二.对话框处理 2.1 基本消息框处理 Ja…
python3 selenium模块Chrome设置代理ip的实现 selenium模块Chrome设置代理ip的实现代码: from selenium import webdriver chromeOptions = webdriver.ChromeOptions() # 设置代理 PROXY = "124.206.133.227:80" chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('-…
在前面爬虫的相关介绍中,我们介绍了如何抓取静态页面信息.但是,在实际的网页浏览过程中,我们可能会经常碰到各种需要进行交互的操作,典型的如输入信息.点击按钮之类. 对于这种场景,之前的静态页面操作方式已经不能满足需求,这时我们需要借助新的工具,比如selenium或者PhantomJS.由于后者已经停止维护,推荐使用前者. 1.selenium是什么 如果大家有做过web的自动化测试,相信对于selenium一定不陌生,测试人员经常使用它来进行自动化测试. selenium最初是一个自动化web测…
1.场景 很多时候登录操作是比较复杂的,因为存在各种反爆破操作,以及为了安全性提交数据都会存在加密.如果要完全模拟代码去实现登录操作是比较复杂,并且该网站后续更新了登录安全相关功能,那么登录的模拟操作又得修改.但是通过selenium模拟人为登录得操作是永远不会过时.因此一个好得方案就是通过selenium模拟登录,然后拿到可用得Cookie通过requests进行后续得模拟请求. 2.实现代码 import time, requests from selenium import webdriv…
原理说明: 在用户调用mysql 这个客户端程序去登录目标服务器时,mysql客户端程序会从本地读取配置文件信息,它要去读的配置文件包括 /etc/my.cnf /etc/mysql/my.cnf ~.my.cnf .在这里我们利用它会去读~.my.cnf 这个特性,来完成我们的目地:只要把一些与 登录操作相关的信息保存到这个文件中,那么在我们登录时就可以不用指定-u ,-p,-h,-P 这些参数了. 这种方式非常不安全,不过自己完一下是没有问题的,生产上就不要用了. ~.my.cnf 的内容如…
ASIFormDataRequest是用于向表单post数据或get数据,可以用于用户向服务器端发送请求完成登录注册,上传下载数据的操作. 之前写过一篇文章是介绍使用ios内置的功能完成登录操作(NSMutableURLRequest 用法,一个结合PHP后台程序用户登录的例子),现在我们使用ASIFormDataRequest来完成用户的登录操作首先我们在apache服务器创建一个login.php的文件,文件内容为:<?phpheader("Content-type: text/htm…
Python3 Selenium多窗口切换 以腾讯网(http://www.qq.com/)为例,打开腾讯网,点击新闻,打开腾讯新闻,点击新闻中第一个新闻链接. 在WebDriver中封装了获取当前窗口句柄方法和获取所有窗口句柄的方法以及切换指定句柄窗口的方法: (句柄:英文handle,窗口的唯一识别码) 方法: 1). driver.current_window_handle --> 获取当前窗口句柄 2). driver.window_handles --> 获取所有窗口句柄 3). d…
在使用selenium进行操作时,有时候在定位元素时会报错.这可能是因为元素还没有来得及加载导致的.可以等过元素等待,等待元素出现.有强制等待,显式等待,隐式等待. 强制等待 就是之前文章中的time.sleep(),只是为了看到界面操作效果才那样设置的.这个是不管找没找到都会等待的.基本代码中不会用这个. 显式等待 WebDriverWait类是WebDriver提供的等待方法.在设置的时间内,会每隔一段时间去检查一次当前页面元素是否存在,如果超过设置时间还没有见到到就抛出异常.具体格式如下:…
总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box input box checkBox 测试页面如下: selenium 最核心的技巧是WebElement的识别和定位 selenium总共有八种定位方法  By.id()  通过id定位 By.name()  通过name 定位 By.xpath() 通过xpath定位 By.className(…
首先页面元素隐藏有五种方法: 1. opacity: 0; opacity 属性的意思是设置一个元素的透明度.它不是为改变元素的边界框(bounding box)而设计的.这意味着将 opacity 设为 0 只能从视觉上隐藏元素.而元素本身依然占据它自己的位置并对网页的布局起作用.它也将响应用户交互.这样的组件用selenium是可以操作的,看 @SitePoint 提供的例子“用 opacity 隐藏元素”,但isdisplay是false的 2. visibility: hidden; 将…
第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS PhantomJS虚拟浏览器 phantomjs 是一个基于js的webkit内核无头浏览器 也就是没有显示界面的浏览器,利用这个软件,可以获取到网址js加载的任何信息,也就是可以获取浏览器异步加载的信息 下载网址:http://phantomjs.org/download.html  下载对应系统版本 下载后解压PhantomJS文件,将解压文件夹,剪切到python安装文件夹 然后将P…
Python3 Selenium自动化-select下拉框 selenium介绍select下拉框相关的操作方法:…
Python3 Selenium自动化测试赋值出现:WebDriverException: Message: unknown error: call function result missing 'value' 问题: 在给予文本框赋值的时候出现错误信息: seleniumn.common.exceptios.WebDriverException: Message: unknown error: call function result missing 'value' 解决方案: (1)下载和…
python3+selenium使用浏览器IE的时候,老是报错: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones 这个错误,更改IE的internet选项->安全,将Internet/本地Internet/受信任的站定/受限制的站点中的启用"保护模式"全部去掉勾,或者全部勾上,即可.…
在环境python3 + selenium + eclipse 运行报错::Unable to find a matching set of capabilities 解决办法:Update Firefox to version >= 52.0.3,更新Firefox版本52.0.3以上…
#!/usr/bin/env python __author__ = "lrtao2010" #python3.7 文件操作 # r 只读,默认打开方式,当文件不存在时会报错 # w 只写,当文件不存在时会自动创建文件,文件内容只能是字符串,只能写入字符串 # r+ 可读可写,当文件不存在时会报错 # w+ 可读可写.当文件不存在时会新建 # a 追加文件,不可读 # a+ 追加文件,可读可写 # rb 以二进制读模式打开,只可读 # rb+ 以二进制写读写模式打开,可读可写,当文件不…
Python3 + selenium + Chrome浏览器 Error: selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH.Please see https://sites.google.com/a/chromium.org/chromedriver/home 这是因为调用 webdriver.Chrome() 需要设置参数 executab…
python2.6切换python3.4的操作记录 之所以写这个记录,源于昨日下午,因为开发人员使用脚本清洗数据,而导致生产环境数据异常,需要根据binlog日志进行回滚.但在使用binlog2sql闪回工具时,出现异常.经过尝试比对,发现python2.6报错.python2.7及python3.4中不报错,于是就想在现有的环境下,切换python的版本. 一.安装python3.4 yum install openssl-devel bzip2-devel expat-devel gdbm-…
selenium : 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等.这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能——创建回归测试检验软件功能和用户需求.支持自动录制动作和自动生成 .Net.Java.Perl等不同语言的…
selenium如何操作页面树状列表??举个例子:我要怎么操作如下图所示的树状结构列表?我要对这个树状结构列表做什么操作? 一.思路 1.根据driver.find_element_by_xpath(‘//*[@id="vehGroupTree_1_switch"]’).click() 选中顶级节点:如上图的XX管理(id属性为"vehGroupTree_1_switch"),获取XX管理的id属性: 2.观察节点之间的规律:如上图的id属性的数字部分逐级+1 3.…
用while实现登录操作(输入yes,使counter置0,还可以玩)#_author:Administrator#date:2019/10/24user_name="star"passwoed='123' counter=0while counter<3: u_username=input("please input your username:") u_password=input("please input your password:&quo…
登录操作(方法二:for与else搭配) user_name="star"passwoed='123' count=0for i in range(3): u_username=input("please input your username:") u_password=input("please input your password:") if u_username==user_name and u_password==passwoed:…