今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box input box checkBox 测试页面如下: <html> <head> <title>selenium处理基本页面元素</title> <style type="text/css"> table{font-size…
原文:http://www.cnblogs.com/tobecrazy/p/4570494.html 今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box input box checkBox 测试页面如下:   selenium 最核心的技巧是WebElement的识别和定位 selenium总共有八种定位方法  By.id()  通过id定位…
介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转.输入.点击.下拉等,来拿到网页渲染之后的结果,可支持多种浏览器 from selenium import webdriver browser=webdriver.Chrome() browser=webdriver.Firefox() browser=webdriver.PhantomJS()…
前置步骤: 上一篇的Python单元测试框架unittest,我认为相当于功能测试测试用例设计中的用例模板,在自动化用例的设计过程中,可以封装一个模板,在新建用例的时候,把需要测试的步骤添加上去即可: 而现在要做的就是学习如何定位页面元素,告诉系统我要找到什么UI元素,然后才能进一步的采取其他措施: 其实不想写这篇内容,可是又觉得如果去官方文档找信息又效率慢,那么我就将常用的步骤归纳,那样可以快速查阅解决问题. 参考英文官方资料:http://selenium-python.readthedoc…
学习目的: 掌握iframe矿建的定位,因为前端的iframe框架页面元素信息,大多时候都会带有动态ID,无法重复定位. 场景: 1. iframe切换 查看iframe 切换iframe 多个iframe的问题 2.多窗口iframe 获取句柄 切换句柄 正式步骤: step1: 如果iframe中含有动态ID的情况规避方法 问题截图 规避代码: # -*- coding:utf-8 -*- """ 模拟登陆126邮箱 """ from sel…
1. 判断元素(expected_conditons) 作为一个刚刚转到python开发的小朋友,在开发前只将前辈们封装的方法看了一遍,学了一边selenium基础.看到封装的方法有什么判断元素是否存在.判断元素是否可见,而在基础知识中根本不存在,一脸懵逼. 直到写爬虫案例的时候,突然发现了selenium下的一个模块吸引了我,因为我在其他开发中根本没有碰到这个模块,所以我就去了解了一下,然后就有了这篇博客. selenium的expected_conditions模块一般也简称EC,收集了一系…
对不可见元素进行操作时,如果通过普通的方式不可行,可以尝试用Javascript Scroll hidden element into view ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", widgetIconEl); Click hidden element JavascriptExecutor js = (JavascriptExecutor)driver; js.exe…
有些HTML页面中的元素中属性较少,经常有找不到id.class.name等常用属性的时候,这个时候xpath.css就能很好的识别到我们的元素. Firefox和chrome浏览器中均有xpath.css插件工具. 以下为通过xpath方法写的测试用例: def test_xpath(self): u'''采用xpath识别元素''' self.browser.find_element_by_xpath(".//*[@id='kw']").send_keys("xpath…
主要是练习获取页面中的各元素,马克 # coding:utf-8 import time from selenium import webdriver import unittest from pythontest.commlib.baselib import * #引用封装后的日志系统 log = TestLog().getlog() class BaiBu(unittest.TestCase): u'''[百度.类]''' def setUp(self): self.browser = we…
继续来介绍一个Selenium中页面title断言方法. 相关脚本代码如下: # coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get('https://www.baidu.com') time.sleep(1) # 方法一 try: assert u"百度一下" in driver.title pri…