本文概述
Selenium的Python模块旨在通过Python执行自动测试。 Selenium Python绑定提供了一个简单的API, 可以使用Selenium WebDriver编写功能/验收测试。要使用Selenium Python打开网页, 请结帐–
使用get方法导航链接– Selenium Python
。能够去某个地方并不是很有用。我们真正想要做的是与页面(或更具体地说, 页面内的HTML元素)进行交互。首先, 我们需要找到一个。 WebDriver提供了多种查找元素的方法。例如, 给定一个定义为的元素:
html
< input type = "text" name = "passwd" id = "passwd-id" />
要查找元素, 需要使用一种定位策略, 例如,
element = driver.find_element_by_id("passwd-id")
element = driver.find_element_by_name("passwd")
element = driver.find_element_by_xpath("//input[@id='passwd-id']")
此外, 要查找多个元素, 我们可以使用–
elements = driver.find_elements_by_name("passwd")
也可以通过其文字查找链接, 但要小心!文字必须完全匹配!在WebDriver中使用XPATH时, 也应格外小心。如果有多个与查询匹配的元素, 则仅返回第一个。如果什么都找不到, 将引发NoSuchElementException。
WebDriver有一个
"基于对象"的API
, 我们使用相同的界面表示所有类型的元素。这意味着, 尽管人们可能会遇到很多可能的方法, 但是当人们按下IDE的自动完成键组合时, 它们可能会被调用, 但并不是所有的方法都有意义或有效。要检查所有方法, 请结帐
定位器策略– Selenium Python
那么获得元素之后下一步呢?例如, 你可能想在字段中输入文本,
element.send_keys("some text")
可以使用" Keys"类来模拟按箭头键:
element.send_keys(" and some", Keys.ARROW_DOWN)
另请注意, 可以在任何元素上调用send_keys, 从而可以测试键盘快捷键, 例如Gmail上使用的快捷键。
可以使用clear方法轻松清除文本字段或文本区域的内容:
element.clear()
项目实例–
让我们尝试在lsbin自动搜索一些内容
程序–
Python3
# import webdriver
from selenium import webdriver
# create webdriver object
driver = webdriver.Firefox()
# get lsbin.org
driver.get( "https://www.lsbin.com/" )
# get element
element = driver.find_element_by_id( "gsc-i-id1" )
# send keys
element.send_keys( "Arrays" )
输出-
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。