最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

python - Shadow Root only found on Windows and not on Mac? - Stack Overflow

programmeradmin3浏览0评论

i have the following code where i want to access a shadow root using selenium: This is working fine when i run this code on my windows computer.

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdrivermon.by import By
import time

print(f"Checking Browser driver...")
options = Options()
options.add_argument("start-maximized")
options.add_argument('--log-level=3')  
options.add_experimental_option("prefs", {"profile.default_content_setting_values.notifications": 1})    
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled') 
srv=Service()
driver = webdriver.Chrome (service=srv, options=options)    
waitWD = WebDriverWait (driver, 10)         

link = "="
driver.get (link)     
time.sleep(5)
shadowHost = driver.find_element(By.XPATH,'//div[@class="szn-cmp-dialog-container"]')
shadowRoot = shadowHost.shadow_root
time.sleep(5)
shadowRoot.find_element(By.CSS_SELECTOR, 'button[data-testid="cw-button-agree-with-ads"]').click()          
input("Finished!")

But when i try to run this on my Mac-computer i get this error message:

(selenium) PolziMacs-Mini:readingmadness polzimac$ python test.py
Checking Browser driver...
Traceback (most recent call last):
  File "/Users/polzimac/Documents/DEV/Fiverr2025/TRY/readingmadness/test.py", line 25, in <module>
    shadowRoot = shadowHost.shadow_root
  File "/Users/polzimac/Documents/DEV/venv/selenium/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 325, in shadow_root
    return self._execute(Command.GET_SHADOW_ROOT)["value"]
  File "/Users/polzimac/Documents/DEV/venv/selenium/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 570, in _execute
    return self._parent.execute(command, params)
  File "/Users/polzimac/Documents/DEV/venv/selenium/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 429, in execute
    self.error_handler.check_response(response)
  File "/Users/polzimac/Documents/DEV/venv/selenium/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 232, in check_response
    raise exception_class(message, screen, stacktrace)
seleniummon.exceptions.NoSuchShadowRootException: Message: no such shadow root
  (Session info: chrome=128.0.6613.138)
Stacktrace:
0   chromedriver                        0x000000010e33c338 chromedriver + 5096248
1   chromedriver                        0x000000010e333b6a chromedriver + 5061482
2   chromedriver                        0x000000010debee01 chromedriver + 388609
3   chromedriver                        0x000000010df0062a chromedriver + 656938
4   chromedriver                        0x000000010df2fef2 chromedriver + 851698
5   chromedriver                        0x000000010df00288 chromedriver + 656008
6   chromedriver                        0x000000010df300ae chromedriver + 852142
7   chromedriver                        0x000000010df4d250 chromedriver + 971344
8   chromedriver                        0x000000010df2fc93 chromedriver + 851091
9   chromedriver                        0x000000010defec79 chromedriver + 650361
10  chromedriver                        0x000000010deff49e chromedriver + 652446
11  chromedriver                        0x000000010e2ff0b0 chromedriver + 4845744
12  chromedriver                        0x000000010e303fc8 chromedriver + 4865992
13  chromedriver                        0x000000010e304695 chromedriver + 4867733
14  chromedriver                        0x000000010e2e1ce9 chromedriver + 4725993
15  chromedriver                        0x000000010e304989 chromedriver + 4868489
16  chromedriver                        0x000000010e2d3c04 chromedriver + 4668420
17  chromedriver                        0x000000010e323e68 chromedriver + 4996712
18  chromedriver                        0x000000010e324067 chromedriver + 4997223
19  chromedriver                        0x000000010e33376e chromedriver + 5060462
20  libsystem_pthread.dylib             0x00007fff6d53b109 _pthread_start + 148
21  libsystem_pthread.dylib             0x00007fff6d536b8b thread_start + 15

Why is this only working on Windows and not on Mac? Do i have to change something in the code so it is also working on Mac?

发布评论

评论列表(0)

  1. 暂无评论