我正在尝试使用下面的代码执行此操作。它应该转到https://www.google.co.jp/,然后点击侧边菜单上的YouTube
链接。
import time
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
binary = FirefoxBinary('C:\Program Files (x86)\Mozilla Firefox\Firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary)
google=driver.get("https://www.google.co.jp/")
youtube=WebDriverWait(driver,300)
.until(EC.presence_of_element_located
((By.XPATH,".//*[@id='tsf']/div[2] /div[3]/center/input[2]")))
youtube.click()
它返回此错误:
[[ElementNotVisibleException]] ERROR
答案 0 :(得分:0)
您需要等待元素可点击,使用element_to_be_clickable:
.until( EC.element_to_be_clickable((By.XPATH, ".//*[@id='tsf']/div[2] /div[3]/center/input[2]")) );
如果这不起作用,我会建议验证您使用了正确的选择器,或增加等待时间。