Selenium Python AttributeError: 'WebElement' object has no attribute 'select_by_visible_text'

14,314

select_by_visible_text() method is available on the Select class, instantiate it:

from selenium.webdriver.support.select import Select

dataset_drop_down_element = WebDriverWait(self.driver, 20).until(EC.element_to_be_clickable((By.ID, 'search_variables_lb_datasets')))
dataset_drop_down_element = Select(dataset_drop_down_element)
Share:
14,314

Related videos on Youtube

Riaz Ladhani
Author by

Riaz Ladhani

Updated on June 04, 2022

Comments

  • Riaz Ladhani
    Riaz Ladhani almost 2 years

    I am selecting a value from a drop down field in Selenium Python. I am getting the error:

    AttributeError: 'WebElement' object has no attribute 'select_by_visible_text'
    

    My method to select the drop down is:

    def select_dataset_from_dataset_dropdown(self):
        dataset_drop_down_element = WebDriverWait(self.driver, 20).until(EC.element_to_be_clickable((By.ID, 'search_variables_lb_datasets')))
        dataset_drop_down_element.select_by_visible_text(str("Query (Query)"))
    

    The HTML is:

        <select id="search_variables_lb_datasets" class="gwt-ListBox marginbelow" style="display: inline;">
    <option value="-">-</option>
    <option value="CRM">CRM</option>
    <option value="ESCR">ESCR</option>
    <option value="ORCHARD">ORCHARD</option>
    <option value="Edit_test">Edit_test</option>
    <option value="Query (Query)">Query (Query)</option>
    </select>
    

    I would like to select the value "Query (Query)"

    Can i select this value?

    The error trace is:

    Traceback (most recent call last):
      File "C:\Webdriver\ClearCore Regression Test\ClearCore - Regression Test\TestCases\StructuredSearch_TestCase.py", line 54, in test_00001_create_search_query_dataset_for_search_and_check_search_variables_dm_query_variables_are_displayed
        search_variables_dm_query_page.select_datamap_and_dataset_from_the_dropdown()
      File "C:\Webdriver\ClearCore Regression Test\ClearCore - Regression Test\Pages\Structured_Search\search_dm_query_page.py", line 90, in select_datamap_and_dataset_from_the_dropdown
        self.select_dataset_from_dataset_dropdown()
      File "C:\Webdriver\ClearCore Regression Test\ClearCore - Regression Test\Pages\Structured_Search\search_dm_query_page.py", line 79, in select_dataset_from_dataset_dropdown
        dataset_drop_down_element.select_by_visible_text(str("Query (Query)"))
    AttributeError: 'WebElement' object has no attribute 'select_by_visible_text'
    

    Thanks, Riaz

  • Riaz Ladhani
    Riaz Ladhani about 8 years
    Ah i forgot the Select. Got it working now. Thanks for your help.