Selenium 是一个用于自动化的独立的基于 Web 的工具。 它是任何人都可以使用的开源工具。
与Python语言结合使用该工具进行测试。 操作链是 Selenium 的基本组成部分,提供了一种管理低级交互的方法,例如按键、鼠标移动、鼠标按钮操作以及与上下文菜单的交互。
本篇文章介绍如何使用 Python 在 Selenium 中实现操作链。
当需要自动化高级脚本(其中我们需要单击或拖动任何元素)时,我们通常使用操作链。
动作链对象用于在 Python 中实现动作链。 动作链对象可以将所有动作存储在队列中,队列通过调用 perform()
函数来执行所有存储的操作。
可以通过导入必要的模块并在 Python 代码中传递一些值来创建简单的 Action Chain 对象。
以下代码创建一个简单的操作链对象。
from selenium import webdriver #webdriver is imported from selenium
from selenium.webdriver.common.action_chains import ActionChains # ActionChains is imported from webdriver
driver = webdriver.Firefox() # a webdriver object is then created
action = ActionChains(driver) # An action chain object is finally created with the driver
为了更好地解释这一点,让我们以网站 https://www.jiyik.com/ 为例,并在 Python 代码中做一些实验。
下面的示例代码首先运行网站 https://www.jiyik.com/,然后单击标题中的 迹忆客 按钮,因此浏览器会将我们重定向到 https://www.jiyik.com/ 网站本身的教程/链接。
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Firefox()
driver.get("https://www.jiyik.com/")
clicker1 = driver.find_element_by_link_text("网络")
action = ActionChains(driver)
action.click(on_element = clicker1)
action.perform()
该代码首先运行并打开网站的主页 https://www.jiyik.com/
。
然后,根据上述代码中的操作,我们将自动重定向到 https://www.jiyik.com/tm/xwzj/network/
网页。
https://www.jiyik.com/
。 为此,我们使用 get()
函数。action.click()
函数并将先前定义的 clicker1 元素作为其参数传递。在本文的这一部分中,我们举了一个在 Python 中使用 Selenium 中的操作链的现实示例。
然而,仅仅在 Selenium 中实现一个动作链是不够的; 我们还需要知道创建动作链对象后执行的动作链方法。 我们在下面为您描述了一些重要的内容。