如何在 Selenium Webdriver 中模拟 HTML5 拖放?


我们可以通过 Selenium webdriver 来模拟 HTML5 拖放。这是一个功能,当某个元素被从它的位置拖放到另一个元素的不同位置时会启用此功能。

Selenium 中的 Actions 类用来处理此功能。drag_and_drop(source, target) 是 Actions 类中用于执行此任务的可用方法。我们必须在我们的代码中导入 from selenium.webdriver import ActionChains 以使用此 Actions 类的此方法。

让我们取两个元素并尝试将第一个元素拖放到第二个元素上。

示例

from selenium.webdriver import ActionChains
from selenium import webdriver
   driver = webdriver.Chrome (executable_path="C:\chromedriver.exe")
   driver.implicitly_wait(0.5)
   driver.get("https://jqueryui.jqueryjs.cn/droppable/")
   driver.switch_to.frame(0)
   # identify source and destination elements
   s=driver.find_element_by_id("draggable")
   d=driver.find_element_by_id("droppable")
   # action object creation
   a = ActionChains(driver)
   a.drag_and_drop(s,d).perform()
driver.close()

输出

更新日期: 18-Sep-2020

548 次浏览

开启您的职业生涯

通过完成课程获得认证

开始
广告