python + selenium 定位下拉选项的元素

时间:2024-03-22 09:09:39

1、如果想看到点击下拉按钮出来选项的效果,定位到下拉按钮,并点击

       WebDriverWait(currentDr,5).until(lambda x:x.find_element_by_class-name("button")).click()

2、检查一下元素的是否是可见的,如果不可见,则将元素设置为可见

      若元素后面是   style="display:none   则说明不可见,可用js方法,将元素设置为可见

        js = "document.getElementById('selectWareHouseId').style.display='block';"

        currentDr.execute_script(js)    #执行js语句

3、使用Select方法选择下拉选项

       代码最上方导入select方法

       from selenium.webdriver.support.ui import Select

     python + selenium 定位下拉选项的元素

    (1)先定位select框架,可以看到上面<select  框架中有个id=selectWareHouseId的属性,可通过id先定位到select

       cc = Select(currentDr.find_element_by_id("selectWareHouseId"))

     (2)然后定位下拉选项中的值,通过text的方法

         cc.select_by_visible_text("全部")

        ps:除了使用select_by_visible_text,还可以使用index、value方法      

                index方法:select_by_index(2)  下拉选项的第三个选项

                value方法:select_by_value(“190……”) 

4、除了select,在其他博客上看还可以用其他方式定位(自己没试过)

         (1)第一步先将定位到选项,点击展开

         (2)通过选项的xpath、id等进行定位