未单击Python Selenium按钮



我正试图从这个网站收集数据(https://www.ilcollege2career.com/#/)使用蟒蛇(硒和美丽的汤(。

我的代码是:

driver = webdriver.Chrome('my file path')
driver.get('https://www.ilcollege2career.com/#/')
first_click = WebDriverWait(driver,5).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="tutorial-modal"]/div/div/div/div[3]/button[1]')))
first_click.click()
second_click = WebDriverWait(driver,5).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="tutorial-start-modal"]/div/div/div[2]/div[2]')))
second_click.click()

所以我的问题是,当第一次点击有效并进入教程步骤时,第二次点击将关闭教程,但没有点击。出于某种原因,time.sleep((有效,但我不想每一步都重复。我做错什么了吗?

我也尝试过用css查找元素。

谢谢。

第二个click的xpath并不准确,因为它没有发送click-to-correct元素。试试这个,

driver.fullscreen_window()
driver.get('https://www.ilcollege2career.com/#/')
first_click = WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="tutorial-modal"]/div/div/div/div[3]/button[1]')))
first_click.click()

选项#1-

second_click = WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH, "//button[@onclick='closeTutorial()']")))
second_click.click()

选项#2-

second_click = WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.XPATH, "//div[@onclick='closeTutorial()']")))
second_click.click()

我为那些正在寻找它的人找到了解决方案。

invisible = WebDriverWait(driver, 10).until(EC.invisibility_of_element_located((By.ID, 'tutorial-modal')))
if invisible:

后面有东西跑不动,所以我永远无法关闭它,通过这样做,我得以退出。

最新更新