对于包含shadow的网页,直接使用
driver.find_element(By.ID, '')
并不能找到对应元素。
这时需要先用JS定位到shadow,然后再去寻找对应的元素,代码如下:
shadow = driver.execute_script('return document.querySelector("name").shadowRoot') #寻找shadow根
element = shadow.find_elements(By.CSS_SELECTOR, '') # 获取所有元素