Selenium 无法从 iframe 中找到有效项目

Selenium can't found valid item from iframe

我有代码:

self.driver.execute_script(f'document.getElementsByName("h-captcha-response")[0].setAttribute("h-captcha-response", "{token}")')
self.driver.execute_script(f'document.getElementsByName("g-recaptcha-response")[0].setAttribute("g-recaptcha-response", "{token}")')
self.driver.find_element_by_id('checkbox').click()
time.sleep(5)

并且该代码不要点击带有 id 复选框的项目(选中 screenshot)

我认为 iframe 上面的问题很大(检查 screenshot)

如果这是解决问题的正确版本,如何将 Selenium 重新聚焦到该 iframe 上?

我认为 driver.switchTo().frame(iframe); 行不通,但是

wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.xpath("//iframe[starts-with(@name,'a-')]")));

可能。