zoukankan      html  css  js  c++  java
  • 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来获取内容值

  • 相关阅读:
    Delphi使用Indy、ICS组件读取网页
    用SendNotifyMessage代替PostMessage避免消息丢失
    LuaPlus的编译和引用
    如何转换和输出超大整数(64位)
    jQuery 源码:封装 Event
    jQuery 源码:操作样式
    jQuery 源码:元素位置
    模拟ES5 Array.prototype.reduce
    as 和 is 运算符以及安全的类型强制转换
    计算机编程基础
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/8334526.html
Copyright © 2011-2022 走看看