找不到 work/not 使用 selenium webdriver 的按钮点击
Buttons click with selenium webdriver not work/not found
实际上,我有一个带有 python 3.10、selenium、undetected-chromedriver 的脚本,我想单击此网页上的两个按钮:
按钮是法国国旗,这里是“.fr”:
和html这两个按钮的代码在这里:
-首先突出显示的是标志 fr
-第二个是国家“.fr”
我已经测试了脚本的某些部分,但实际上没有用:
对于语言标志 fr:
driver.find_element(By.XPATH, "(//span[@id='lang_fr'])").click()
driver.find_element(By.ID,"lang_fr").click()
国家.fr:
driver.find_element(By.XPATH, "(//span[@setting='4'])").click()
driver.find_element(By.XPATH, "(.//span[contains(text(), '.fr')])").click()
我的结果有一些错误,“找不到元素”,或者这个:
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
任何人都可以帮助我或知道问题出在哪里?
谢谢帮助,再见!
你必须先点击默认标志,然后会有2个按钮,你可以点击如下:
代码:
driver_path = r'C:\Users\****\***\Desktop\Automation\chromedriver.exe'
driver = webdriver.Chrome(driver_path)
driver.maximize_window()
driver.get("https://keepa.com/#!")
wait = WebDriverWait(driver, 30)
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div#currentLanguage .languageMenuText"))).click()
flag = wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "img#lang_fr")))
flag.click()
lang = wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='.fr']")))
lang.click()
进口:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
您可以尝试下面的代码,它会对您有所帮助(虽然这是使用 java)。
Actions actions = new Actions(driver);
WebElement ctr;
ctr= driver.findElement(By.xpath("//*[contains(text(),'YOUR DESIRED TEXT')]"));
Thread.sleep(1000);
actions.click(spatial).perform();
实际上,我有一个带有 python 3.10、selenium、undetected-chromedriver 的脚本,我想单击此网页上的两个按钮:
按钮是法国国旗,这里是“.fr”:
和html这两个按钮的代码在这里:
-首先突出显示的是标志 fr
-第二个是国家“.fr”
我已经测试了脚本的某些部分,但实际上没有用:
对于语言标志 fr:
driver.find_element(By.XPATH, "(//span[@id='lang_fr'])").click()
driver.find_element(By.ID,"lang_fr").click()
国家.fr:
driver.find_element(By.XPATH, "(//span[@setting='4'])").click()
driver.find_element(By.XPATH, "(.//span[contains(text(), '.fr')])").click()
我的结果有一些错误,“找不到元素”,或者这个:
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
任何人都可以帮助我或知道问题出在哪里?
谢谢帮助,再见!
你必须先点击默认标志,然后会有2个按钮,你可以点击如下:
代码:
driver_path = r'C:\Users\****\***\Desktop\Automation\chromedriver.exe'
driver = webdriver.Chrome(driver_path)
driver.maximize_window()
driver.get("https://keepa.com/#!")
wait = WebDriverWait(driver, 30)
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div#currentLanguage .languageMenuText"))).click()
flag = wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "img#lang_fr")))
flag.click()
lang = wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='.fr']")))
lang.click()
进口:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
您可以尝试下面的代码,它会对您有所帮助(虽然这是使用 java)。
Actions actions = new Actions(driver);
WebElement ctr;
ctr= driver.findElement(By.xpath("//*[contains(text(),'YOUR DESIRED TEXT')]"));
Thread.sleep(1000);
actions.click(spatial).perform();