如何在 Python Selenium 中自动点击菜单框/弹出右键单击?


我们可以在 Python 中使用 ActionChains 类,用 Selenium 网页驱动程序自动执行右键单击操作。我们必须创建一个 ActionChains 类对象,然后对其应用相关的方法。

为了将鼠标移动到要执行右键单击的元素,我们将使用 move_to_element 方法并将元素定位器作为参数传递。

然后应用 context_click 方法执行右键单击。最后,使用 perform 方法实际执行这些操作。此外,我们必须在代码中添加 from selenium.webdriver.common.action_chains import ActionChains 语句以使用 ActionChains 类。

语法

a = ActionChains(driver)
m= driver.find_element_by_id("hot-spot")
a.move_to_element(m)
a.context_click().perform

实例

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.alert import Alert
#set chromodriver.exe path
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.implicitly_wait(0.5)
#launch URL
driver.get("https://the-internet.herokuapp.com/context_menu")
#object of ActionChains
a = ActionChains(driver)
#identify element
m = driver.find_element_by_id("hot-spot")
#move mouse over element
a.move_to_element(m)
#perform right-click
a.context_click().perform()
#switch to alert
al = driver.switch_to.alert
#get alert text
s = al.text
print("Alert text: ")
print(s)
#accept alert
al.accept()
#close browser
driver.quit()

输出

更新于: 06-4 月-2021

779 次浏览

开启你的 职业生涯

完成课程以获得认证

开始
广告