• selenium出现“element not interactable”问题总结


    “element not interactable”问题根因:元素不可交互,可能的原因及解决方法如下所示:

    1、检查元素的定位(XPATH、CSS_SELECTOR内的内容)是否写正确

    2、代码中元素进行获取的时候查看是否已经加载出来,等待元素加载可以使用显式等待

    element = WebDriverWait(browser,20,0.5).until(EC.presence_of_element_located((By.XPATH,'//*[@id="app"]/div')))
    3、元素在页面上不可见,需要拖动下拉框才能看到这个元素,此时需要让元素在页面上可见,才可操作
    4、可能是页面元素被iframe标签包裹起来了:如163邮箱登录
     
     
    from time import sleep
    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.implicitly_wait(10)
    
    driver.get("https://mail.163.com/")
    driver.find_element_by_link_text("密码登录").click()
    driver.switch_to.frame(driver.find_element_by_xpath('//iframe[@scrolling="no"]')) #需要定位到iframe标签
    driver.find_element_by_xpath('//input[@name="email"]').send_keys("lmsgau")
    driver.find_element_by_link_text("登  录").click() #源代码中若是有空格,此处也必须有空格
    sleep(10)
    driver.quit()
    

      

  • 相关阅读:
    呵呵

    HDU 1878 欧拉回路
    HDU 3293 sort
    HDU 2714 ISBN
    神秀作偈
    大学之道
    写给自己过去疯狂的一年(2)(写在一个特别的时候)
    这几天我的生活就是这样的
    学习和研究计划
  • 原文地址:https://www.cnblogs.com/shary-blue/p/13985965.html
Copyright © 2020-2023  润新知