2017-08-16 88 views
-1

我正在尝试使用Selenium从下拉元素中选择一个项目,但唯一的唯一ID在数据绑定值中。我一直在使用在数据绑定值中选择Selenium中的下拉选项

<select data-bind="value: customerProvince, options: availableProvinces, optionsText: 'Name', optionsCaption: ''" class="form-control uc-not-searchable" size="1"> 
<option value=""></option><option value="">Alberta</option><option value="">British Columbia</option><option value="">Manitoba</option><option value="">New Brunswick</option><option value="">Newfoundland and Labrador</option><option value="">Northwest Territories</option><option value="">Nova Scotia</option><option value="">Nunavut</option><option value="">Ontario</option><option value="">Prince Edward Island</option><option value="">Quebec</option><option value="">Saskatchewan</option><option value="">Yukon Territory</option> 
         </select> 

话,我想选择一个选项值尝试。我曾尝试下面的代码的两片无济于事:

customerProvinceField = browser.find_element_by_css_selector("value: customerProvince, options: availableProvinces, optionsText: 'Name', optionsCaption: ''") 

customerProvinceField = browser.find_element_by_css_selector("value: customerProvince") 

两个接收的一个错误:“消息:无效选择器:无效的或非法的选择指定”。

下面
+0

更新我的回答 –

+0

[Selenium/Python - 通过css选择器选择]的可能重复(https://stackoverflow.com/questions/18600391/selenium-python-selecting-via-css-selector) – JeffC

回答

0

用途: -

customerProvinceField= driver.find_element_by_xpath('//select[contains(@data-bind,"value: customerProvince, options: availableProvinces, optionsText:")]') 

代码就会像

Select(driver.find_element_by_xpath('//select[contains(@data-bind,"value: customerProvince, options: availableProvinces, optionsText:")]')).select_by_value('Nunavut').click() 

参考: -

Selecting a value from a drop-down option using selenium python

希望它会帮助你

相关问题