# 测试气象卫星资料页面功能
# author:gongxr
# date:2017-07-24
import random, time
from selenium import webdriver
from login_page import LoginPage login_obj = LoginPage()
driver = webdriver.Chrome(executable_path=login_obj.driver_path)
time.sleep(2) # 智能等待
driver = login_obj.login(driver) # 登录
# 登录后默认进入综合显示分析
# time.sleep(2) # 进入气象卫星资料页面
driver.find_element_by_link_text('气象卫星资料').click()
time.sleep(3) # 定义变量
random_num_to_str = str(random.randint(1000, 9999)) # 随机数,保证不重复
sates = '' # 存储卫星按钮元素
plots = '' # 存储全要素填图按钮元素
lights = "" # 存储闪电按钮元素 def sates_click():
'''遍历风云、葵花卫星数据展示'''
sates = driver.find_elements_by_name('satellite')
del sates[0] # 默认第一个元素已经选中,跳过
sate_last = sates[-1]
for sate in sates:
sate.click()
time.sleep(2)
sate_last.click() # 再次点击取消显示 def plots_click():
'''全要素填图遍历'''
plots = driver.find_elements_by_xpath("//li[@mode='station,isoline']")
plots[0].click() # 地面全要素加载较慢,单独处理
time.sleep(5)
for plot in plots[1:]:
plot.click()
time.sleep(2) def lights_click():
'''闪电按钮遍历'''
lights = driver.find_elements_by_xpath("//div[@class='gro_bolt']/ul/li")
for light in lights:
light.click()
time.sleep(2) sates_click()
plots_click()
lights_click() # 关闭浏览器
time.sleep(2)
login_obj.quit()

selenium之测试卫星资料页面操作(元素遍历)的更多相关文章

  1. selenium之测试角色管理页面举例

    # 测试角色权限管理页面功能 # author:xr # date:2017-07-20 from selenium import webdriver from login_page import L ...

  2. Selenium with Python 005 - 调用js操作页面元素

    WebDriver提供了execute_script()方法来执行JavaScript方法,格式如 driver.execute_script(script,*args) 执行js一般有两种场景,一是 ...

  3. Java&Selenium调用JS实现高亮被操作页面元素高亮

    Java&Selenium调用JS实现高亮被操作页面元素高亮 /* * the method of invoking js to do something * * @author daviey ...

  4. 自动化测试-8.selenium操作元素之键盘和鼠标事件

    前言 在前面的几篇中重点介绍了一些元素的定位方法,定位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...

  5. Selenium(八):其他操作元素的方法、冻结界面、弹出对话框、开发技巧

    1. 其他操作元素的方法 之前我们对web元素做的操作主要是:选择元素,然后点击元素或者输入字符串. 还有没有其他的操作了呢?有. 比如:比如鼠标右键点击.双击.移动鼠标到某个元素.鼠标拖拽等. 这些 ...

  6. selenium(3):学习操作元素基本方法

    来源:<selenium webdriver基于Python源码案例> 一.打开网页①第一步:从selenium里面导入webdriver模块②打开浏览器(Ie和Chrome对应下面的)③ ...

  7. 父页面操作嵌套iframe子页面的HTML标签元素

    一个页面A.html使用iframe嵌套一个页面B.html,在A页面写js操作B页面HTML元素,首先要获取到B页面document对象,才能对嵌套页面进行操作 请看一个实例,在A页面写js操作B页 ...

  8. Python+Selenium学习--窗口切换及操作元素

    场景 有时候我们在测试一个web 应用时会出现多个浏览器窗口的情况,在selenium1.0 中这个问题比较难处理.webdriver 提供了相关相方法可以很轻松的在多个窗口之间切换并操作不同窗口上的 ...

  9. 高并发分布式系统中生成全局唯一(订单号)Id js返回上一页并刷新、返回上一页、自动刷新页面 父页面操作嵌套iframe子页面的HTML标签元素 .net判断System.Data.DataRow中是否包含某列 .Net使用system.Security.Cryptography.RNGCryptoServiceProvider类与System.Random类生成随机数

    高并发分布式系统中生成全局唯一(订单号)Id   1.GUID数据因毫无规律可言造成索引效率低下,影响了系统的性能,那么通过组合的方式,保留GUID的10个字节,用另6个字节表示GUID生成的时间(D ...

随机推荐

  1. Qt+QGis二次开发:创建临时图层并添加要素

    开发环境:Win10 + VS2010 + Qt 4.8.6 + QGis 2.14.4 其实本文实现的功能类似于QGis中“添加文本数据图层”的一个简化版,本文不会涉及到对话框的使用,不通过与用户互 ...

  2. POJ2236

    https://vjudge.net/problem/POJ-2236 An earthquake takes place in Southeast Asia. The ACM (Asia Coope ...

  3. 运行Android Studio自带模拟器报:Guest isn't online after 7 second...

    今天在运行Android Studio自带的手机模拟器时,出现如下异常情况 : 解决办法: 1.打开Android Virtue Device Manager,点击编辑选项 2.点击show Adva ...

  4. 软概(lesson 1):Javaweb实现用户登录界面

    一.问题描述 二.网站系统开发所需要的技术 网站界面开发:html 后台所需要的技术:java基本内容,数据库语句,连接数据库实现增删改查 本题所用技术:数据库链接以及增加功能,基本html语句 技术 ...

  5. pycharm 取消 rebase 操作

    291/5000 取消rebase操作从主菜单中选择VCS | Git | 中止重新定位(abrot rebasing)如果rebase在两个或多个本地存储库中启动,则会显示“中止重新排序”对话框. ...

  6. Hive 实现 wordcount

    创建表: create table hive_wordcount(context string); load data local inpath '/home/hadoop/files/hellowo ...

  7. Luogu3350 ZJOI2016 旅行者 最短路、分治

    传送门 题意:给出一个$N \times M$的网格图,边有边权,$Q$组询问,每组询问$(x_1,y_1)$到$(x_2,y_2)$的最短路.$N \times M \leq 2 \times 10 ...

  8. Android下WPS打开Excel2007版也有问题

    继上次解决微软office Android版Excel下载并打开Excel文件修改后(http://anforen.com/wp/2017/11/excel-android-mobile/),再上传出 ...

  9. .NET Core 3.0 跟踪

    Preview1: https://blogs.msdn.microsoft.com/dotnet/2018/12/04/announcing-net-core-3-preview-1-and-ope ...

  10. [Oracle]发生 ora-06502 RMAN 在对 catalog DB 同期时出错的调查方法

    Catalog DB resync error: 1, setting on the server that starts the RMAN client $ Export EVENT_10928 = ...