selenium select dropdown python code example

Example 1: python selenium select dropdown

from selenium import webdriver
from selenium.webdriver.support.ui import Select

driver = webdriver.Firefox()
driver.get('url')

select = Select(driver.find_element_by_id('fruits01'))

# select by visible text
select.select_by_visible_text('Banana')

# select by value 
select.select_by_value('1')

Example 2: dropdown in selenium

it depends what kind of dropdown
There are 2 dropdowns 
1- HTML
2- SELECT

we determine what kind of dropdown it is
 -By tagName.We inspect.If it has <select> tag, it means it is <select> dropdown. 
 -If it is HTML, we can locate and click just as any other web element.
 
 I handle Select type of dropdown by using Select class from Selenium. 
    - Methods to select from dropdown:
        - selectByVisibleText
        - selectByValue
        - selectByIndex 
        
I verify which option is selected in a dropdown?
 - If we want to get the currently selected option, 
 we use getFirstSelectedOption() method.
        -> return type: currently selected option as a web element
        
       
--> .getOptions();
    -> This method will return all of the options in the <select> web element.
    -> return type: List<WebElement>

Example 3: select dropdown selenium

How do you handle Select type of dropdown?
    - If it is <select> we would have to use Select class from Selenium.
    - Methods to select from dropdown:
        - selectByVisibleText
        - selectByValue
        - selectByIndex 
--> How do we verify which option is selected in a dropdown?
    - If we want to get the currently selected option, 
    we use getFirstSelectedOption() method.
    getFirstSelectedOption();
        -> return type: currently selected option as a web element
--> .getOptions();
    -> This method will return all of the options in the <select> web element.
    -> return type: List<WebElement>

Example 4: using selenium with a dropdown menu

driver.findElement(By.id("dropdownlistone")).click(); // To click on drop down list
driver.findElement(By.linkText("india")).click(); // To select a data from the drop down list

Example 5: python selenium dropdown without select

# Just found a very simple solution for this annoying problem
# Been looking around for days just to solve it, Selecting dropdowns without Select class

# Find your dropdown element by the following, finds the element in the dropdown named BRA
Dropdown_Element = driver.find_element(By.XPATH, "//*[text()='BRA']").click()

# Store the ActionChains class inside the actions variable
actions = ActionChains(driver)

# Click on the element using the click(on_element=)
actions.click(on_element=Dropdown_Element)
time.sleep(2)
actions.perform()

# Hopes this helped :)

Tags:

Java Example