www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ElementNotInteractableException: Message: element not interactable

 

原因分析:
1、未放鼠标在元素上,元素的标签:

2、放了鼠标在元素上:元素的标签:


3、从元素上移开鼠标,元素的标签:


4、相比较之前,元素的标签属性多了“class=’’”,因此改变的元素的内容,无法click()。

解决方案:
1、解决方式,调用ActionChains(),模拟人类操作过程,先定位的元素为,
然后把鼠标移到元素上,这时元素标签的属性改变了多了class=“focus”,因此需要重新定位元素,然后click()。

解决代码:
1、my_error_element=driver.find_element(By.XPATH,"//*[@id=‘importRenewMiCoinForm’]/div[2]/div/div/div/div/div/ul/li[3]")

2、print(my_error_element.get_attribute(‘outerHTML’))

3、my_action.move_to_element(my_error_element).perform()

4、driver.find_element(By.XPATH,"//*[@id=‘importRenewMiCoinForm’]/div[2]/div/div/div/div/div/ul/li[3]").click()

**解释:
步骤1,定位元素。步骤2,看一下是否定位成功,并输出元素的所有标签内容。步骤3,将鼠标放在该元素上。步骤4,重新定位元素,并点击元素。**

关于步骤3的前期import部分和调用部分

1)from selenium.webdriver.common.action_chains import ActionChains

2)driver=webdriver.Chrome()

3)my_action=ActionChains(driver)

4)url0=“http://us.tracksolidpro.com/mainFrame”

5)driver.get(url0)

posted on 2022-11-10 11:50  秦瑞It行程实录  阅读(655)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui