python - 如何刷新页面直到正确加载(由于服务器错误,如错误 502)

标签 python selenium selenium-webdriver

我正在尝试使用 python 中的 selenium Web 驱动程序来自动化网站。当由于页面未正确加载的服务器错误而无法获取可点击元素时,它会被卡住。我想创建一个函数,如果页面未正确加载(更具体地说,如果未获取可点击元素),它将在 15 秒后自动刷新页面。

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

driver=webdriver.Chrome(r"C:\Users\Hp\Downloads\chromedriver")

driver.get("https://addguru.in/user/index.php")
driver.maximize_window()

driver.implicitly_wait(15)

username=driver.find_element_by_name("username").send_keys("-------")

password=driver.find_element_by_name("password").send_keys("-------")

driver.implicitly_wait(40)

driver.find_element_by_class_name("submit_btn").click()
""" I want a function here which automatically refresh the page after each 15 sec if  the submit-btn is not clickable (due to propely loading problem) """
browser.find_element_by_id("checkCbtaskdiv").click()


driver.implicitly_wait(10)

最佳答案

快速查看,根据this answer ,您可以将不带 .click()driver.find_element_by_class_name("submit_btn") 的响应设置为变量,然后检查该变量是否不是 None

while elements is None:
    elements = driver.find_element_by_class_name("submit_btn")

for e in elements:
    e.click()

关于python - 如何刷新页面直到正确加载(由于服务器错误,如错误 502),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55406570/

相关文章:

python - HTML 抓取 XPath

c# - Selenium 测试无法点击 mat-select 元素

java - 无法捕获异常 NoSuchElementException

javascript - 如何读取参数值,存在于规范中 Protractor 的conf.js文件中

python - 为什么我的 while 循环永远运行 print _ ?

python - 如何从 docker-compose 安装 requirements.txt?

Python Selenium 抓取不正确的括号集(Python、Selenium、MySQL)

python - 修改 selenium python 绑定(bind)中的语言选项时遇到问题

ruby - 在 Cronjob - Chrome 上运行 ruby​​ selenium 脚本

python - Pandas 使用通配符模式读取 csv 来选择列