javascript - Python Selenium 按钮未被点击

标签 javascript python html python-3.x selenium

我正在尝试使用 python(selenium 和 beautiful soup)从该网站( 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 查找元素。

谢谢。

最佳答案

第二次点击的 xpath 不准确,因为它没有将点击发送到正确的元素。试试这个,

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()

关于javascript - Python Selenium 按钮未被点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58544282/

相关文章:

javascript - 显示多个ajax请求的加载对话框

javascript - Jquery全局变量赋值和在javascript函数中的使用

python - 基本整数到字符串映射函数中的 "Function object is unsubscriptable"

python - IntegrityError 在表 "orders_order"上插入或更新违反了外键约束“

javascript - 检查浏览器宽度并执行一个 Javascript 文件并覆盖另一个 Javascript

javascript - 删除子循环(已损坏)?

html - Internet Explorer CSS header 问题

javascript - 提交初始化后删除某些帖子数据

python - 根据日期时间值是否在一小时内在 Pandas 中创建新列

javascript - 在 React 中使用 props