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();
driver.findElement(By.linkText("india")).click();
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 :)