Python+selenium之获取文本值和下拉框选择数据
Python+selenium之获取文本值和下拉框选择数据
一、结合实例进行描述
1. 实例如下所示:
#新增标签操作
def func_labels(self):
self.driver.find_element_by_xpath("//*[@class='menu-text'][text()='业务管理']").click()
time.sleep(1)
self.driver.find_element_by_xpath("//*[@class='menu-text'][text()='打标签']").click()
time.sleep(1)
self.driver.find_element_by_id("btn-addTag").click()#点击【新增标签】按钮
time.sleep(1)
self.driver.execute_script("$('#tag_receivingId_flexselect').blur();$('#tag_receivingId option:eq(2)').attr('selected',true).change();ecui.form.flexSelect('#tag_receivingId');")#运用js来下拉选择数据(隐藏属性)
#time.sleep(1)
self.driver.execute_script("$('#tag_senderId option:eq(1)').attr('selected',true).change()")#下拉框选中发货方
#time.sleep(1)
self.driver.find_element_by_id('tag_totalCnt').send_keys(3)#填写货品件数
#time.sleep(1)
self.driver.execute_script("$('#tagDetail_prod option:eq(1)').attr('selected',true).change()")#下拉选择“货品信息”
#time.sleep(1)
self.driver.find_element_by_id('tagDetail_prodCount').send_keys(5)#填写数量值
#time.sleep(1)
self.driver.find_element_by_xpath("//button[@data-bb-handler='success']").click()#点击【保存】按钮
#self.driver.find_element_by_xpath("//button[@class='btn btn-purple ehkey-saveAndPrint']").click()#点击【保存并打印】按钮
# < div
# id = "hid_new_tagno"
# style = "display: none" >
#
# < / div >
ls=self.driver.execute_script('return $("#hid_new_tagno").text();')#运用JS来获取内容值
time.sleep(2)
# 参考http://blog.csdn.net/eastmount/article/details/48108259
time.sleep(2)
self.driver.find_element_by_xpath("//span[@class='menu-text'][text()='托运单']").click()
time.sleep(1)
self.driver.find_element_by_xpath("//button[@id='btn-addTag']").click()
bs=self.driver.find_element_by_id("tag_tagNo")
bs.send_keys(ls)
bs.send_keys(Keys.RETURN)#回车
time.sleep(2)
self.driver.find_element_by_xpath("//button[@class='btn btn-success ehkey-save']").click()
self.driver.quit()
2.上述代码中:
①self.driver.execute_script("$('#tag_receivingId_flexselect').blur();$('#tag_receivingId option:eq(2)').attr('selected',true).change();ecui.form.flexSelect('#tag_receivingId');")#运用js来下拉选择数据(隐藏属性)
②在层级菜单中,一定需要加上一个延时,这里以time.sleep(2)为例,否则,会报错
③ls=self.driver.execute_script('return $("#hid_new_tagno").text();')#使用return返回值,运用JS来获取内容值
Python+selenium之获取文本值和下拉框选择数据的更多相关文章
- vue-如何清除下拉框选择数据
清除前 清除后 在选择select标签里加一个属性clearable便可实现该效果.
- PHP文本框的值随下拉框改变
初学PHP,下面是实现文本框内容随下拉框变化的代码实现: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- 获取 TUniConnection.SpecificOptions默认值和下拉框列表值
TUniConnection的SpecificOptions参数决定了数据库连接配置参数,但可惜的是,SpecificOptions设计器界面,Devart公司只能让它在设计期配置! Specific ...
- Selenium 3----警告框处理+下拉框选择
警告框处理 在WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confi ...
- robotframework文本类型的下拉框
对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...
- robotframework自动化系列:文本类型的下拉框
对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...
- jquery根据下拉框选择的值显示输入框
原理就是根据下拉框选择的值来控制显示那个输入框: html代码: 首先定义一个下拉框,$serviceTypeList就是后台传过来的所有属性, <div class="uk-form ...
- Selenium3 + Python3自动化测试系列八——警告框处理和下拉框选择
警告框处理 在WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confi ...
- 前端下拉框选择和动态生成调用div
进入到一个项目期中,一边做项目,一边学习其中用到的知识.这些知识都是零碎的,有数据库,有html,有js,还有django.趁周末时间,整理前面遇到过的前端相关的知识点. 下拉框选择 <html ...
随机推荐
- java获取unicode码
public String toUNICODE(String s) { StringBuilder sb=new StringBuilder(); for(in ...
- 那些最好的轮子 - PHP篇
转载于:http://avnpc.com/pages/best-wheels-for-php 在关于不要重复造轮子的二三事一文中,交代了一些背景和想法.本篇则完全是一些干货,列举一些我用过或者即将会用 ...
- Linux命令-文件处理命令:tail
tail /etc/services 查看etc目录的services文件最后10行内容(默认显示后10行内容) tail -n /etc/services 查看etc目录的services文件的后5 ...
- Step by Step Learn Python(1)
print "Hello World!" action = raw_input("please select your action{1, 2, 3, 4, 5, 6, ...
- 浅谈AngularJS的$parse服务
$parse 作用:将一个AngularJS表达式转换成一个函数 Usage$parse(expression) arguments expression:需要被编译的AngularJS语句 retu ...
- 如何运行Struts2官网最新Demo?
本篇将讲述下如何运行官网当前最新Struts2.5.10.1 版本的Demo. Struts2 官网:http://struts.apache.org/ 0x00 Demo下载 Struts2 官网2 ...
- Node.js综述
前言 本综述文章旨在帮助读者深入理解下Node.js的本质,不去关注应用的细节,我认为真正的技术问题只有在动手写代码的时候才会遇到,那个阶段解决问题才是真正有意义的. 发展史 Node.js是Ry ...
- bazel-编译一个源文件生成可执行程序
demo1 使用bazel编译一个源文件生成可执行程序简单示例 demo1目录树 demo1 ├── app │ ├── BUILD │ └── hello_world.cpp ├── README. ...
- VS调试-添加命令行参数
Project -> Properties -> Configuration Properties -> Debugging 在Command Arguments里填上即可
- udacity android 实践笔记: lesson 4 part b
udacity android 实践笔记: lesson 4 part b 作者:干货店打杂的 /titer1 /Archimedes 出处:https://code.csdn.net/titer1 ...