繁体   English   中英

通过名称获取下拉菜单选项值

[英]Acquiring drop down menu option value selecting through name

我是 python 新手,我试图了解如何单击下拉菜单,我通过名称而不是值来选择它,即使名称在整个代码中多次显示,因为每件衬衫都有不同的值,其中夹克可以有14123 ,衬衫的值是14133

这是我的代码:

browser = webdriver.Chrome()

Size=browser.find_element_by_xpath("//select[@name='X-Large']/option[@value='12218866729085']").click()

一件衬衫的 HTML 代码 EX:

select id="product-select" name="id" class="">

option value="12218866630781">Small</option>
option value="12218866663549">Medium</option>
option value="12218866696317">Large</option>
option value="12218866729085">X-Large</option>

给出这个错误:

("//select[@name='X-Large']/option[@value='12218866729085']").click() AttributeError: 'str' 对象没有属性 'click'

你可以使用这个 xpath - //select/option[text()='Medium']

它是一个选择下拉列表,因此您需要使用 select 命令从下拉列表中选择值。 例如在java中

  Select dropdown = new Select(driver.findElement(By.id("product-select")));

  dropdown.selectByVisibleText("Medium"); //to select medium

我们可以使用索引或值代替可见文本,例如

 dropdown.selectByIndex(1); //second option in dropdown as count starts from 0 in java

或者

 dropdown.selectByValue("12218866663549"); //using value attribute

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM