演示 Selenium click_and_hold() 按住不松开操作。按住是 ActionChains 组合操作的基础 —— 按住 → 移动 → 释放,这就是拖拽的底层实现。
使用场景:
⚠️ 必须和 release 配对:click_and_hold() 只按不松,如果后面没有 release(),这个"按下"状态会一直保持到下次 ActionChains 重置,可能导致后续操作异常。
click_and_hold() 只按下不释放!
如果之后没有 release(),元素会一直处于"被按下"状态,可能导致后续操作异常。
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.action_chains import ActionChains # 1. 启动浏览器 + 打开演示页面 driver = webdriver.Chrome() driver.get("https://autotest-505.pages.dev/mouse_op_tech_sections/mouse_hold_tech.html") # 2. 定位元素 btn = driver.find_element(By.ID, "holdBtn") actions = ActionChains(driver) # 3. 按住不松 actions.click_and_hold(btn).perform() # 在按住期间,可以执行其他操作(例如移动) actions.move_by_offset(50, 0).perform() # ★ 重要:最终必须 release 释放!否则会卡住后续操作 actions.release().perform() # 4. 关闭浏览器 driver.quit()