• webdriver(处理select下拉框元素)


     1 """处理下拉框"""
     2 
     3 from selenium import webdriver
     4 from selenium.webdriver.common.by import By
     5 from selenium.webdriver.support.ui import WebDriverWait
     6 from selenium.webdriver.support import expected_conditions as ES
     7 from selenium.webdriver.common.action_chains import ActionChains
     8 from selenium.webdriver.support.select import Select
     9 import time
    10 
    11 
    12 def elementFind(driver, way, str):
    13     """
    14     封装具有等待时间加判断的定位方法
    15     :param driver:
    16     :param way: 定位方式
    17     :param str: 要定位的元素
    18     :return:
    19     """
    20     try:
    21         element = WebDriverWait(driver, 5, 0.5).until(ES.presence_of_element_located((way, str)))
    22         return element
    23     except:
    24         return False
    25 
    26 
    27 driver = webdriver.Chrome()
    28 driver.get("http://www.baidu.com")
    29 
    30 el = elementFind(driver, By.LINK_TEXT, '设置')
    31 ActionChains(driver).move_to_element(el).perform()
    32 
    33 time.sleep(1)
    34 driver.find_element(By.CSS_SELECTOR, '.setpref').click()
    35 
    36 """
    37 1 select_by_index          # 通过索引定位
    38 2 select_by_value          # 通过value值定位
    39 3 select_by_visible_text   # 通过文本值定位
    40 """
    41 time.sleep(1)
    42 s = driver.find_element_by_css_selector("#nr")
    43 Select(s).select_by_value('50')
    44 
    45 # 二次定位方式
    46 time.sleep(1)
    47 driver.find_element_by_id("nr").find_element_by_xpath("//option[@value='20']").click()
    48 
    49 time.sleep(3)
    50 driver.quit()
    View Code
  • 相关阅读:
    labview事件结构
    20180105关于课题所用的labview的改进随笔
    同步FIFO与异步FIFO
    20180110labview串口传输实时显示相关内容
    labview相关内容
    科技英文写作之连词大全
    t-检验
    AngularJS -- 表单验证
    AngularJS -- 过滤器
    AngularJs -- 表达式
  • 原文地址:https://www.cnblogs.com/97xiaolai/p/11796267.html
Copyright © 2020-2023  润新知