我是python的新手,我试图理解如何单击下拉菜单,我在菜单中通过名称而不是值来选择它,即使在整个代码中多次显示该名称,因为每件衬衫都有不同的名称夹克可以有14123
,而衬衫可以有14133
作为值。
这是我的代码:
browser = webdriver.Chrome()
Size=browser.find_element_by_xpath("//select[@name='X-Large']/option[@value='12218866729085']").click()
一件衬衫的HTML Code 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”
答案 0 :(得分:0)
您可以使用此xpath-// select / option [text()='Medium']
答案 1 :(得分:0)
它是一个选择下拉列表,因此您需要使用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