Python: Getting exception message: no such shadow root. As shadowroot (closed) is present

167 views
Skip to first unread message

Nilesh Khankari

unread,
Sep 15, 2023, 12:08:31 PM9/15/23
to Selenium Users
Hi,
 I am not able to get shodowroot element using following code.  So how to get shadow root closed element?. Attached html structure screenshot, code snippet and excption. PFA.

Code snippet:
shadowHost = driver.find_element(By.XPATH, "//plugin-iframe")
print(driver.find_elements(By.XPATH, "//plugin-iframe"))
shadowHost.click()
time.sleep(3)
#driver.switch_to.frame(shadowHost)
print(shadowHost)
# shadow_root1 = driver.execute_script('return arguments[0].shadowRoot', shadowHost)
# print(shadow_root1)
shadowRoot = shadowHost.shadow_root
iframeEle = shadowRoot.find_element(By.CSS_SELECTOR, ".sandbox-iframe")

Exception: 
  File "/Users/nilesh/vsphere-plugin/selenium-automation/src/vpshere_login.py", line 69, in switchToIframe
    shadowRoot = shadowHost.shadow_root
                 ^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/selenium/webdriver/remote/webelement.py", line 243, in shadow_root
    return self._execute(Command.GET_SHADOW_ROOT)["value"]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/selenium/webdriver/remote/webelement.py", line 394, in _execute
    return self._parent.execute(command, params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 344, in execute
    self.error_handler.check_response(response)
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchShadowRootException: Message: no such shadow root

image (15).png


--------------
Thanks,
Nilesh
Reply all
Reply to author
Forward
0 new messages