首页 > 解决方案 > 等到页面加载 Selenium Python

问题描述

我正在使用 Selenium Python 打开一个 chrome 选项卡。我想等到蓝色圆圈停止旋转。请检查屏幕截图。用例是在登录按钮上计时,然后弹出一个窗口。如果页面仍在加载,即蓝色圆圈仍在旋转,则登录按钮不起作用。我想等到那个蓝色圆圈消失。

你可以看到标记的区域

标签: seleniumselenium-webdriverselenium-chromedriver

解决方案


这应该可以帮助你:

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

login_btn = WebDriverWait(driver, 500).until(EC.presence_of_element_located((By.XPATH, 'xpath of login button'))) #Waits until the login button is visible.

login_btn.click()

如果您不想通过它找到按钮xpath,那么您可以更改By.XPATHBy.IDBy.CLASS_NAME

编辑:

这是完整的代码:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options

chrome_options = Options()

chrome_options.add_argument("--start-maximized")

driver = webdriver.Chrome('chromedriver.exe',options = chrome_options)

driver.get('https://www.nike.com/es/launch/t/womens-air-jordan-6-tech-chrome')

login_btn = WebDriverWait(driver, 500).until(EC.presence_of_element_located((By.XPATH, '//*[@id="root"]/div/div/div[1]/div/header/div[1]/section/div/ul/li[1]/button'))) #Waits until the login button is visible.

login_btn.click()

输出截图:

在此处输入图像描述


推荐阅读