多测师讲解selenium _携程选票定位练习_高级讲师肖sir
打开携程网

from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys #Keys类 #common
from selenium.webdriver.support.ui import Select #select类定位下拉框
drvier=webdriver.Chrome()
url='https://www.ctrip.com/'#携程网
drvier.get(url)
drvier.maximize_window()
sleep(3)


a =drvier.find_element_by_id('HD_CityName') #找到你要清空的位置
a.clear()


输入时间值的方法

#drvier.find_element_by_id('HD_CheckIn').send_keys('2020-9-14')
js ='document.getElementById("HD_CheckIn").value="2020-09-17"'# 使用JS语法
drvier.execute_script(js)

退房时间:先清空,在定位,输入值
a=drvier.find_element_by_id('HD_CheckOut')
a.clear()
drvier.find_element_by_id('HD_CheckOut').send_keys('2020-09-29')

房间数定位元素:属于下拉框

通过下标定位
s=drvier.find_element_by_id('J_roomCountList')#当前下拉框的具体位置
Select(s).select_by_index(6)
如皋没有清空的情况下:会出现时间重复的情况
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys #Keys类 #common
from selenium.webdriver.support.ui import Select #select类定位下拉框
drvier=webdriver.Chrome()
url='https://www.ctrip.com/'#携程网
drvier.get(url)
drvier.maximize_window()
sleep(10)
drvier.find_element_by_id('HD_CityName').send_keys('深圳')
#
# a =drvier.find_element_by_id('HD_CityName') #找到你要清空的位置
# a.clear()
# a =drvier.find_element_by_id('HD_CheckIn') #找到你要清空的位置
#a.clear() #清空当前输入框中的值
# sleep(2)
drvier.find_element_by_id('HD_CheckIn').send_keys('2020-9-14')



from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys #Keys类 #common
from selenium.webdriver.support.ui import Select #select类定位下拉框
drvier=webdriver.Chrome()
url='https://www.ctrip.com/'#携程网
drvier.get(url)
drvier.maximize_window()
sleep(3)
drvier.find_element_by_id('HD_CityName').send_keys('深圳')
#
# a =drvier.find_element_by_id('HD_CityName') #找到你要清空的位置
# a.clear()
a =drvier.find_element_by_id('HD_CheckIn') #找到你要清空的位置
a.clear() #清空当前输入框中的值
# sleep(2)
#drvier.find_element_by_id('HD_CheckIn').send_keys('2020-9-14')
# js ='document.getElementById("HD_CheckIn").value="2020-09-17"'# 使用JS语法
# drvier.execute_script(js)
k =drvier.find_element_by_id("HD_CheckIn")# 通过keys类
k.send_keys(Keys.CONTROL,'a') #通过keys中的方法:a代表全部选择
sleep(4)
l =drvier.find_element_by_id("HD_CheckIn")
l.send_keys(Keys.CONTROL,'x') #X代表剪切
sleep(4)
drvier.find_element_by_id("HD_CheckIn").send_keys('2020-09-28')
sleep(2) #退房时间
a=drvier.find_element_by_id('HD_CheckOut')
a.clear()
drvier.find_element_by_id('HD_CheckOut').send_keys('2020-09-29')
s=drvier.find_element_by_id('J_roomCountList')#当前下拉框的具体位置
Select(s).select_by_index(6) #通过索引来选择对应的房间
sleep(4) #选择住客数通过传统方法定位
# drvier.find_element_by_id('J_RoomGuestInfoTxt').click() #点击住客数
# drvier.find_element_by_css_selector('.number_plus').click()
# drvier.find_element_by_id('J_RoomGuestInfoBtnOK').click()
# 通过js语法来定位选择住客数
j_s='document.getElementById("J_RoomGuestInfoTxt").value="8成人"'
drvier.execute_script(j_s)
drvier.find_element_by_id('HD_TxtKeyword').send_keys('世界之窗')
l =drvier.find_element_by_id('searchHotelLevelSelect') #酒店级别的位置
Select(l).select_by_index(1) #通过索引来找到酒店
drvier.find_element_by_id('HD_Btn').click()
多测师讲解selenium _携程选票定位练习_高级讲师肖sir的更多相关文章
- 多测师讲解自动化selenium___定位元素002___高级讲师肖sir
高级自动化测试python+selenium教程手册 --高级讲师肖sir(Harm) 第 2 章8种定位方法 总结: selenium 的 webdriver 提供了八种基本的元素定位方法,前面六种 ...
- 多测师讲解自动化测试 _RF封装_(三层模式)高级讲师肖sir
rf自动化:分层作用: 1.项目----有重复的流程(借款-登录,出借-登录) 2.借款--登录(8个流程)机器人:案例层(用例)写在机器人中,1个机器人=1条用例 分三个层次: 1.案例层(存放用例 ...
- 多测师讲解自动化测试 _RF关键字001_(上)_高级讲师肖sir
讲解案例1: Open Browser http://www.baidu.com gc #打开浏览器 Maximize Browser Window #窗口最大化 sleep 2 #线程等待2秒 In ...
- 多测师讲解第一个月 _综合面试题_高级讲师肖sir
第一个月综合面试题 1. 冒烟测试是什么意思? 对主要的用例测试 2.你们公司的项目流程是什么? 3.你们公司的bug分几个级别? 4个 4.你对外键是怎么理解的? 你会使用外键吗?给一个表添加 ...
- 多测师讲解自动化--rf断言(下)--_高级讲师肖sir
1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...
- 多测师讲解自动化--rf关键字--断言(下)_高级讲师肖sir
断言: 1.1Page Should Contain Maximize Browser Window sleep 2 Comment Page Should Contain hao123 #断言当前页 ...
- 多测师讲解自动化测试_rf节课内容_高级讲师肖sir
*** Settings ***Library Selenium2LibraryLibrary OperatingSystem *** Variables ***${name} zhangsan@{l ...
- 多测师讲解python_模块(导入模块和内置模块)_高级讲师肖sir
#自定义模块# from aaa import * #指定导入某个包中具体的类.函数.方法## A.fun1(2,2) #import +模块名 :# # import +模块名+.+.+# # 导入 ...
- 多测师讲解html _图片标签003_高级讲师肖sir
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>段 ...
随机推荐
- 【API进阶之路】用API打造一条自动化内容生产流水线
摘要:搞定了内容审核之后,我又把抓取工具.内容审核API.文本摘要生成API串联在一起,从抓到审再到编,建立了一条自动化的内容生产流水线,编辑团队只需要做优质内容的推荐就可以了. 上周,运营部将官网上 ...
- Mybatis-使用注解开发
使用注解开发 [toc] 1. 面向接口编程 大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 ...
- VUE常用问题hack修改
vue-router router这里踩的坑主要是组件的重用.构建单页面大型应用的话,肯定要开启组件的缓存的,因为一般会要求后退的时候不要重新加载页面,而且要记住原始的滚动位置.首先,引入router ...
- oracle之二redo日志
redo 日志 4.1 redo (重做) log 的功能:数据recovery4.2 redo log 特征: 1)记录数据库的变化(DML.DDL) 2)用于数据块的recover ...
- JavaScript 异步编程
博客地址:https://ainyi.com/96 众所周知,JavaScript 是单线程的,但异步在 js 中很常见,那么简单来介绍一下异步编程 同步编程和异步编程 同步编程,计算机一行一行按顺序 ...
- [二叉树-根到叶的子路径]路径总和 III (两层递归)
题目437. 路径总和 III 给定一个二叉树,它的每个结点都存放着一个整数值. 找出路径和等于给定数值的路径总数. 路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父 ...
- 关于java中循环的学习
switch 值是固定的 效率高语法:switch (表达式) { case 常量 1: 语句; break; case 常量 2: 语句; break; … default: 语句; break;} ...
- 高可用集群之keepalived+lvs实战2
keepalived简介 lvs在我之前的博客<高负载集群实战之lvs负载均衡-技术流ken>中已经进行了详细的介绍和应用,在这里就不再赘述.这篇博文将把lvs与keepalived相结合 ...
- Linux环境变量总结 转
转自https://www.jianshu.com/p/ac2bc0ad3d74 Linux是一个多用户多任务的操作系统,可以在Linux中为不同的用户设置不同的运行环境,具体做法是设置不同用户的环境 ...
- Docker之简单操作
安装完Docker后,我们就可以与Docker进行交互来创建和管理容器等操作. 容器生命周期管理: 创建一个新的容器并运行一个命令 docker run [OPTIONS] IMAGE [COMMAN ...