python脚本进行单选框 , 复选框和下拉框的定位操作

1》单选框操作

  • 在html中同一组多个单选框的name属性必须一样

    性别


    不详

  • click()

  • is_selected() 是否选中 返回True/False

  • get_attribute(“value”) 单选框的值

    1. wb.find_elements("name","sex")[0].get_attribute("value")

2》多/复选框操作

  • 在html中同一组多个复选框的name属性必须一样

读书
游戏
旅游

  • click()

  • is_selected() 是否选中 True/Fase

  • get_attribute(“value”) 复选框的值

3》下拉选择框操作

  • 学历

    1. '''
    2. def demo4_readonly(self):
    3. #第一步:移除日期输入框的只读属性
    4. # document.getElementById('date').removeAttribute('readonly')
    5. self.wd.execute_script("document.getElementById('date').removeAttribute('readonly')")
    6. #第二步:输入日期 2022-01-01
    7. self.wd.find_element("id","date").send_keys("2022-01-01")
    8. #移除价格输入框禁用属性:document.getElementById('price').removeAttribute('disabled')
    9. self.wd.execute_script("document.getElementById('price').removeAttribute('disabled')")
    10. #输入价格 1000
    11. self.wd.find_element("id","price").send_keys("1000")
    # 1.定位 男单选框,如果男单选框状态为选中,输出男单选框的值
    # 2.定位 女单选框,如果女单选框状态没有选中,点击选中
    from selenium import webdriver
    from time import sleep
    from selenium.webdriver.support.select import Select
    from pymouse import PyMouse
    from pykeyboard import PyKeyboard
    
    class Demo1:
        def __init__(self):
            self.wb = webdriver.Chrome()  # 创建浏览器对象
            self.wb.get("file:///C:/Users/aoxiang.liu/Desktop/demo1.html")  # 打开被测网页的网址
            self.wb.maximize_window()  # 网页页面最大化
            sleep(1)  # 暂停1秒
    
        def day1(self):
            list_day1=self.wb.find_elements("name","sex")
            if list_day1[0].is_selected():
                print(list_day1[0].get_attribute("value"))
            sleep(1)
            if not list_day1[1].is_selected():
                list_day1[1].click()
    
        #对多选框操作:默认是第一个选中,取消第一个,第二个第三个选中,输出选中的值
        def day2(self):
            list_day2=self.wb.find_elements("name","like")
            list_day2[0].click()
            for i in range(1,len(list_day2)):
                list_day2[i].click()
                print(list_day2[i].get_attribute("value"),end=" ")
            print()
    
        # 对下拉选择框操作: "大专"使用索引index选择  "本科"使用值value选中  "研究生"使用文本text选中选择
        def day3(self):
            #1.定位web元素下拉框---webElement元素
            list_day3=self.wb.find_elements("id","education")
            #2.将web元素转换为下拉框对象
            lst=Select(list_day3)
            #3.使用下拉框对象提供方法,选择选项
            lst.select_by_index(0)   #下标从0开始
            lst.select_by_value("undergraduate")   #从value值开始找
            lst.select_by_visible_text("研究生")    #从文本内容开始找
    
        def day4(self):
            m=PyMouse()   #设置鼠标操作
            m.click(158,559)  #定位鼠标点击位置
            sleep(2)
            k=PyKeyboard()   #设置键盘操作
            k.type_string("abc.txt")   #上传文本文件
            k.tap_key(k.enter_key)     #点击回车键
    
    if __name__ == '__main__':
        dom=Demo1()
        # dom.day1()
        # dom.day2()
        # dom.day3()
        dom.day4()

你可能感兴趣的:(python)