python中selenium如何定位shadow-root中的元素
最近遇到了这个问题,找了好久,终于找到了,参考的是下面这篇文章,但是这篇文章写的比较简单并且有点小问题,对此进行补充,和记录关于shadow-root的查找_#shadow-root_Redamancy又在写BUG的博客-CSDN博客
是以下面这个图片为例,要定位到里面的input需要这么写:
driver.find_element(By.CSS_SELECTOR,'kat-input').shadow_root.find_element(By.CSS_SELECTOR,'input')
后面如果有多个shadow-root可以接多个shadow_root,例如:
t=driver.find_element(By.CSS_SELECTOR,'kat-date-range-picker').shadow_root.find_element(By.CSS_SELECTOR,'kat-date-picker[class=start]').shadow_root.find_element(By.CSS_SELECTOR,'kat-input').shadow_root.find_element(By.CSS_SELECTOR,'input')