双击 python selenium

问题描述 投票:0回答:3

我正在将 selenium 与 python 一起使用。我能够获取下面的代码来单击我想要的位置,但我希望它双击。我不太擅长操作链,但我知道我需要它来进行双击。谁能帮我解决我需要改变的事情?

user = self.find_element_by_id("selUsers")
for option in user.find_elements_by_tag_name("option"):
    if option.text == "Admin, Ascender":
         option.click()
python selenium double-click
3个回答
30
投票

据我所知,动作链是唯一最好的选择

from selenium.webdriver.common.action_chains import ActionChains

driver=self.webdriver
user = self.find_element_by_id("selUsers")
for option in user.find_elements_by_tag_name("option"):
   if option.text == "Admin, Ascender":
      actionChains = ActionChains(driver)
      actionChains.double_click(option).perform()

0
投票

从 selenium 导入 webdriver 从 selenium.webdriver.common.action_chains 导入 ActionChains

driver = webdriver.Chrome()

driver.get("https://example.com")

target_element = driver.find_element_by_id(“示例元素-id”)

ActionChains(driver).click(target_element).perform()

ActionChains(driver).double_click(target_element).perform()

driver.quit()


-2
投票

试试这个:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from time import sleep
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains

usernameStr = 'xxxxxx'
passwordStr = 'xxxxx'

browser = webdriver.Chrome()
browser.get(('https://accounts.google.com/ServiceLogin?'
         'service=mail&continue=https://mail.google'
         '.com/mail/#identifier'))


username = browser.find_element_by_id('identifierId')
username.send_keys(usernameStr)
nextButton = browser.find_element_by_id('identifierNext')

nextButton.click()

# wait for transition then continue to fill items
password = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.XPATH,'//*    [@id="password"]/div[1]/div/div[1]/input')))

password.send_keys(passwordStr)

signInButton = browser.find_element_by_id('passwordNext')
signInButton.click()

apsButton = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.XPATH,'//[@id="gbwa"]/div/a')))

apsButton.click()
driveButton = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.XPATH,'//*[@id="gb49"]/span[1]')))
driveButton.click()
© www.soinside.com 2019 - 2024. All rights reserved.