`
uniquepig
  • 浏览: 92257 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

WebDriver(Selenium2) 判断页面是否刷新的方法

阅读更多
	public static boolean waitPageRefresh(WebElement trigger) {
		int refreshTime = 0;
		boolean isRefresh = false;
		try {
			for (int i = 1; i < 60; i++) {
				refreshTime = i;
				trigger.getTagName();
				Thread.sleep(1000);
			}
		} catch (StaleElementReferenceException e) {
			isRefresh = true;
			System.out.println("Page refresh time is:" + refreshTime + " seconds!");
			return isRefresh;
		} catch (WebDriverException e) {
			e.printStackTrace();
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		System.out.println("Page didnt refresh in 60 seconds!");
		return isRefresh;
	}}

说明: 从selenium 2.16开始 增加了StaleElementReferenceException异常。在页面元素进行刷新后,再次对此元素进行操作则会抛出这个异常。所以可以根据这个作为标识判断页面是否刷新。或者是否跳转到下一个页面。能灵活设定等待时间。并且能够统计刷新时间。
分享到:
评论

相关推荐

    Selenium2 Python 自动化测试实战学习笔记

    Selenium2(也被称为Selenium WebDriver)是Selenium的最新版本,提供了与浏览器直接交互的能力,支持多种浏览器,如Chrome、Firefox、IE等。 一、Selenium2基础 1. **安装与配置**:首先,我们需要安装Python环境...

    selenium基础

    Selenium 的最新版本是 Selenium 2,它融合了 Selenium RC 和 WebDriver 的优点,提供了更强大的功能和更好的性能。WebDriver 是 Selenium 2 的核心组件,通过浏览器提供的原生能力来控制浏览器,而不是像 Selenium ...

    Webdriver Cheat Sheet by灰蓝.pdf

    Webdriver可以对页面中的元素进行各种操作,如点击、输入、提交表单、清除输入、获取元素的text、判断元素是否显示、判断元素是否可用、判断元素是否被选中等。例如,element=driver.find_element_by..element.click...

    python的《Selenium爬虫》中文版

    - **布隆过滤器**:一种空间效率极高的概率数据结构,用于判断元素是否在一个集合中。 - **关系型数据库MYSQL**:MySQL 数据库的基本操作,包括安装、常用命令等。 - **非关系型数据NOSQL**:介绍 NoSQL 数据库的...

    python2.7+selenium2实现淘宝滑块自动认证功能

    【Python2.7 + Selenium2 实现淘宝滑块自动认证功能】 在自动化测试或网络爬虫领域,有时候我们需要模拟用户行为,例如登录、点击、填写表单等。在这个场景下,淘宝的滑块验证机制为自动化流程带来了一定的挑战。...

    UI自动化测试学习讲义资料-003

    - 导入`Select`类:`from selenium.webdriver.support.select import Select` - 创建`Select`对象:`select = Select(element)` - 选择下拉框选项:`select.select_by_index(index)` 或 `select.select_by_value...

    seleniumBot:机器人将用户登录并带他们进入产品页面,以保持刷新状态,直到有“添加到购物车”按钮可用为止

    **页面刷新** 要持续刷新页面,Selenium 提供了 `refresh()` 方法,可以在达到特定条件之前周期性地调用此方法。这可能结合 `time.sleep()` 函数来设置每次刷新之间的间隔,以避免过于频繁的请求导致服务器负载过高...

    JS模拟自动点击的简单实例

    - **增加条件判断**:为了防止不必要的重复刷新,可以在 `autoclick` 函数中加入条件判断逻辑,例如根据某个变量的状态来决定是否继续执行刷新操作。 - **使用更高级的库**:对于复杂的自动化任务,可以考虑使用如 ...

Global site tag (gtag.js) - Google Analytics