使用未检测到的Chromedriver和Python显式等待不起作用

2024-05-05 15:33:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用未检测到的Chromedriver(v2)使用一些显式等待。它似乎会暂停,直到等待时间到期,而不是在加载元素后执行语句

当我使用普通的selenium chromedriver时,一切正常(“选择加入”在1-2秒内关闭),当我使用sleeps而不是Wait时,语句执行得更快

有人看到问题了吗

代码如下:

class My_Chrome(uc.Chrome):
    def __del__(self):
        pass

options = uc.ChromeOptions()
arguments = [
    '--log-level=3', '--no-first-run', '--no-service-autorun', '--password-store=basic',
    '--start-maximized',
    '--window-size=1920, 1080',
    '--credentials_enable_service=False',
    '--profile.password_manager_enabled=False,'
    '--add_experimental_option("detach", True)'
]
for argument in arguments:
    options.add_argument(argument)

driver = My_Chrome(options=options)
wait = WebDriverWait(driver, 20)

driver.get('https://www.oddschecker.com')

try:
    opt_in = wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='Not Now']/..")))
    VirtualClick(driver, opt_in)
    current_time('Closing opt-in')
except:
    pass

Tags: noinfalsemydriverservicepasspassword