访问含 selenium 的影子根内容

6l7fqoea  于 2022-12-04  发布在  其他
关注(0)|答案(1)|浏览(126)

我正在尝试接受http://www.immobilienscout24.de上弹出的cookie。
我使用的是 selenium 4.61,带有chrome的webdriver-manger,python 3.11和Fedora 37,但是我总是得到一个错误。
我使用下面的代码

driver = webdriver.Chrome(ChromeDriverManager().install())

def accept_cookies():
    shadow_root = WebDriverWait(driver, 2).until(EC.presence_of_element_located((By.CSS_SELECTOR, "#usercentrics-root"))).shadow_root
    shadow_root.find_element((By.CLASS_NAME, "sc-gsDKAQ fWOgSr")).click()

url = 'http://www.immobilienscout24.de/'

driver.get(url)

time.sleep(10)

accept_cookies()

休眠仅用于加载cookie弹出窗口。错误为:异常错误:消息:无效参数:'using'必须是shadow_root上的字串。find_element((By.CLASS_NAME,'sc-gsDKAQ fWOgSr'))

bfrts1fy

bfrts1fy1#

下面的代码对我有用:

url = "http://www.immobilienscout24.de/"
driver.get(url)

time.sleep(10)

element = driver.execute_script("""return document.querySelector('#usercentrics-root').shadowRoot.querySelector("button[data-testid='uc-accept-all-button']")""")
element.click()

相关问题