如何解决在python中用硒绕过youtube帐户弹出窗口
我尝试通过以下方式克服此伪弹出窗口:
webdriverwait(driver,10).until(EC.element_to_be_clickable((By.ID,'introAgreeButton'))).click()
webdriverwait(driver,10).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="introAgreeButton"]'))).click()
所描述的方法似乎都不起作用。 有什么办法可以绕过这个烦人的弹出窗口?
解决方法
我遇到过同样的问题。解决办法是:
try:
driver._switch_to.frame("iframe")
aggreeButton = driver.find_element_by_id("introAgreeButton")
aggreeButton.click()
except:
print("failed")
将当前帧移出到页面级别
driver.switch_to.default_content()
,
当我导航到YouTube时,无法弹出该弹出窗口;但是,我怀疑这是一个对话框或警报。如果使用Elements
(F12)检查Chrome Dev Tools
标签,那应该告诉您。然后,使用find_element
的{{1}}来点击“我同意”
已更新-将XPATH修改为iron-overlay-backdrop标签
xpath
此后,等待模式/对话框消失或从driver.find_element(By.XPATH,"//iron-overlay-backdrop[@class='opened']//button[text()='I agree']").click()
中删除,然后继续做您正在做的事情
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。