作者:Baiju Muthukadan 协议:本文档采用知识共享署名 - 共享4.0国际许可. 原英文网址:http://selenium-python.readthedocs.io/index.html 翻译:Tacey Wong 注意 :这不是官方文档,官方API文档可以到这里查阅 目录 1.安装-100% 1.1简介 1.2下载Selenium Python 1.3 Driver驱动器 1.4 针对Windows用户的详细介绍 1.5下载Selenium server 2.初步开始-100…
由于API文档格式不太适合cnblog博客,暂且翻译一部分,且暂未校对 注意:这不是官方文档,官方 API文档在这里. 本章包含Selenium WebDriver的所有接口 推荐import风格 本章中的API第一显示的都是类的绝对位置.然而,要推荐的是下面这种import风格: from selenium import webdriver 接着,你可以像下面这样访问其中的类: webdriver.Firefox webdriver.FirefoxProfile webdriver.Chrom…
1.1.简介 Selenium Python为使用Selenium WebDriver来编写功能/验证测试提供了一个简单的API接口.通过Selenium Python API,你可以以一种非常直观的方式来访问Selenium WebDriver的所有功能. Selenium Python为访问诸如火狐.IE.Chrome等浏览器的Selenium WebDriver提供了一个简便的API接口,当前该支持Python2.7,3.5+. 本文档仅仅介绍Selenium2 WebDriver的API…
另外一个FAQ:https://github.com/SeleniumHQ/selenium/wiki/Frequently-Asked-Questions 8.1.怎样使用ChromeDriver 从chromedriver 下载页下载版(译者注:需FQ).解压压缩包: unzip chromedriver_linux32_x.x.x.x.zip 你应该看到一个chromedriver可执行文件.接着你就可以像下面这样创建一个WebDriver实例: driver = webdriver.Ch…
要定位一个页面中的元素有多中策略和方法.你可以根据实际情况选择其中最为合适的.Selenium为定位页面元素提供了下面的这些方法: find_element_by_id(使用id) find_element_by_name(使用name属性值) find_element_by_xpath(使用XPath) find_element_by_link_text(使用显示文本) find_element_by_partial_link_text(使用超链接文本) find_element_by_tag…
2.1.简单使用 如果已经安装好了Selenium Python,你就可以像下面这样编写Python代码来使用它了: from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Firefox() driver.get("http://www.python.org") assert "Python" in driver.title…
大多数现代web应用都使用了AJAX技术.当浏览器加载一个页面的时候,该页面内的元素可能在不用的时间间隔内进行加载.这使得元素定位变得比较困难:如果一个元素还没有出现在DOM中,定位函数将会抛出一个ElementNotVisibleException异常.使用waits等待可以解决这个问题.等待将会给定位一个元素或者对元素进行一些其他的操作提供一个缓冲的时间. Selenium WebDriver提供了两种类型的等待--显式等待和隐式等待.显式等待会给WebDriver一个确定的条件,如果条件满…
本章是介绍页面对象设计模式的教程.一个页面对象代表了web应用用户接口的一片区域,你的测试代码将与之交互的. 使用页面对象模式的好处: 可以创建在多个测试样例中都可使用的可重用代码 减少重复性代码 如果用户接口发生改变,只需要字一个地方做出改动即可 6.1 测试样例 下面是一个测试样例,用于测试Pytohn.org网站的搜索功能,搜索一个单词,并确保能得到一些结果. import unittest from selenium import webdriver import page class…
你使用WebDriver要做的第一件事就是访问一个链接.一般通过调用get方法来实现: driver.get("http://www.baidu.com") 在将控制权返给你的脚本之前WebDriver将会等待Web页面完全加载(也就是说,等待onload被触发).值得注意的是如果你的页面在加载的时候使用了大量的AJAX的话,WebDriver可能不知道什么时候页面已经加载完成.如若你需要确保这类页面被完整加载,可以使用wait等待. 3.1.与页面进行交互 仅仅访问一个页面并没什么大…
最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实在是太多, 根本存不过来.后来追踪到 Python 官方的 GitHub 文档地址, 干脆就把官方的 GitHub 下载下来了:cpython GitHub 地址. 1. 下载 Python 的 GitHub 仓库:cpython从 GitHub 上 clone 仓库很简单,在命令行中执行命令 gi…