与网页互动– Selenium Python

本文概述

  • html
  • Python3
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自动搜索一些内容
【与网页互动– Selenium Python】程序–
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" )

输出-
与网页互动– Selenium Python

文章图片
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。

    推荐阅读