zoukankan      html  css  js  c++  java
  • Python+webdriver单选框/复选框定位

    1.单选框radio定位:

    直接定位即可

    driver.find_element_by_id("*****")

    2.复选框checkbox定位:

    直接定位即可

    driver.find_element_by_id("*****")

    3.复选框全部勾选定位:

    (1)可以一个一个勾选定位

    (2)可以定位一组元素

    复选框的type=checkbox,这里可以用xpath语法:.//*[@type='checkbox']

    drvier.find_elements_by_xpath(".//[@type='checkbox']")

    find_elements是不能直接点击的,它是复数的,所以只能先获取到所有的checkbox对象,然后通过for循环去一个个点击操作

    # 复选框单选
    driver.find_element_by_id("c1").click()
    # 复选框全选
    checkboxs = driver.find_elements_by_xpath("//*[@type='checkbox']")
    for i in checkboxs:
        i.click()

    #-*-coding:utf-8-*-
    from selenium import webdriver
    import time
    driver = webdriver.Chrome()
    driver.get("https://www.kugou.com")
    driver.maximize_window()
    driver.find_element_by_tag_name("input").send_keys("成都")
    driver.find_element_by_class_name("searh_btn").click()
    time.sleep(3)
    elements = driver.find_elements_by_class_name("checkbox")#定位一组元素,得到一个列表
    for m in elements:
        m.click()
        time.sleep(1)
    elements.pop(0).click()#勾选/取消勾选索引为0的元素,如果已被选中则该操作效果为取消勾选.勾选或者取消勾选之后,列表会重新排序,pop()的效果是移除,无论勾选还是取消勾选,elements列表中的一个元素被移除,列表长度发生变化.
    print(len(elements))
    elements.pop(1).click()#勾选/取消勾选索引为0的元素,注意,elements列表收到上面pop(0)的影响,已经发生变化,列表更新后,此时为elemnents新列表中的索引为1的元素
    print(len(elements))
    elements.pop(2).click()#勾选/取消勾选索引为0的元素,列表重新排序,此时为新列表中的索引为2的元素
    print(len(elements))
    elements.pop().click()#勾选/取消勾选elements列表中最后一个元素,如果已被选中则该操作效果为取消选中
    print(len(elements))
    driver.quit()

    4.判断是否选中:is_selected()

    # 没点击操作前,判断选项框状态
    s = driver.find_element_by_id("boy").is_selected()
    print s
    driver.find_element_by_id("boy").click()
    # 点击后,判断元素是否为选中状态
    r = driver.find_element_by_id("boy").is_selected()
    print r

  • 相关阅读:
    LOJ #2196「SDOI2014」LIS
    LOJ#2249 Luogu P2305「NOI2014」购票
    LOJ #6268 分拆数
    Luogu P3700「CQOI2017」小Q的表格
    LOJ #2527 Luogu P4491「HAOI2018」染色
    knockout 学习使用笔记-----event绑定传参ko属性
    bootstrap select 学习使用笔记-------选中赋值及change监听丢失
    knockout 学习使用笔记------绑定值时赋值失败
    js 数组判断是否包含某元素 或 数组去重
    bootstrap-select 使用笔记 设置选中值及手动刷新
  • 原文地址:https://www.cnblogs.com/yaoze2018/p/10427158.html
Copyright © 2011-2022 走看看