selenium - 等到页面加载 Selenium Python
问题描述
我正在使用 Selenium Python 打开一个 chrome 选项卡。我想等到蓝色圆圈停止旋转。请检查屏幕截图。用例是在登录按钮上计时,然后弹出一个窗口。如果页面仍在加载,即蓝色圆圈仍在旋转,则登录按钮不起作用。我想等到那个蓝色圆圈消失。
解决方案
这应该可以帮助你:
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.XPATH
为By.ID
或By.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()
输出截图:
推荐阅读
- android - 为什么 continueStroke 函数不起作用
- android - 当用户单击网页中的按钮时,将数据从 Trusted Web Activity 保存在内部存储中
- android - 如何以编程方式在android中获取状态启用或禁用自动启动权限
- linux - 使用正则表达式进行 Grep 并使用组进行捕获
- java - 我的查询有什么问题??它完全没有错误
- c# - 使用 P/Invoke 传递取消标志时是否需要同步?
- c# - 如何在 ASP.NET MVC 中使用实体框架向数据库添加条目?
- java - 连接重置 - Java(基础套接字状态保持建立)Azure VM
- php - 在 Azure Web App 服务的 wwwroot 之外部署 PHP 文件
- javascript - 使用JavaScript计算两个给定点的方位角?