driver.findElement(By.xpath("//span[@aria-label=\"Phone to call with\"]"));
我无法按ID查找xpath,因为它在重新加载时不断变化。
<md-select ng-model="ctrl.selectedLinkedPhone" class="ng-pristine ng-valid ng-empty ng-touched" tabindex="0" aria-disabled="false" role="listbox" aria-expanded="false" aria-multiselectable="false" id="select_26" aria-invalid="false" aria-label="
Phone to call with
" style=""><md-select-value class="md-select-value md-select-placeholder" id="select_value_label_25"><span>
Phone to call with
</span><span class="md-select-icon" aria-hidden="true"></span></md-select-value><div class="md-select-menu-container" aria-hidden="true" role="presentation" id="select_container_27"><md-select-menu role="presentation" class="_md"><md-content class="_md">
<!----><md-option ng-disabled="!ctrl.isLinkedPhoneCurrentlyVerified(linkedPhone)" ng-repeat="linkedPhone in ctrl.getLinkedPhones()" ng-value="linkedPhone" tabindex="0" class="md-ink-ripple" role="option" aria-selected="false" id="select_option_29" aria-checked="true" aria-disabled="false" value="[object Object]" style=""><div class="md-text">
Phone 1
</div></md-option><!----><md-option ng-disabled="!ctrl.isLinkedPhoneCurrentlyVerified(linkedPhone)" ng-repeat="linkedPhone in ctrl.getLinkedPhones()" ng-value="linkedPhone" tabindex="0" class="md-ink-ripple" role="option" aria-selected="false" id="select_option_30" aria-checked="true" aria-disabled="false" value="[object Object]" style=""><div class="md-text">
Phone 2
</div></md-option><!----><md-option ng-disabled="!ctrl.isLinkedPhoneCurrentlyVerified(linkedPhone)" ng-repeat="linkedPhone in ctrl.getLinkedPhones()" ng-value="linkedPhone" tabindex="0" class="md-ink-ripple" role="option" aria-selected="false" id="select_option_31" aria-checked="true" aria-disabled="false" value="[object Object]" style=""><div class="md-text">
Hangouts
</div></md-option><!---->
</md-content></md-select-menu></div></md-select>
此xpath适用于HTML:
By.xpath("//md-select[normalize-space(@aria-label='Phone to call with')]")
By.cssSelector("md-select[aria-label*='Phone to call with']")
要查找选项,例如,对于文本“hangouts”,您可以使用:
By.xpath("//md-select[normalize-space(@aria-label='Phone to call with')]//md-option[normalize-space(.)='Hangouts']")
WebElement selectMenu = driver.findElement(By.xpath("//md-select[normalize-space(@aria-label='Phone to call with')]"));
WebElement option = driver.findElement(By.xpath("//md-select[normalize-space(@aria-label='Phone to call with')]//md-option[normalize-space(.)='Hangouts']"));
//1. first click to open dropdown, second click on option
selectMenu.click();
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(option)).click();
//2. select using javascript
((JavascriptExecutor) driver).executeScript("arguments[0].click();", option);
我正在尝试通过selenium驱动程序和Python来玩autologin测试。我正在使用这个站点https://invoiceaccess.pgiconnect.com/我做了什么: 例如,我需要选择,但它选择了。在我犯错的地方,谁能帮帮我?
下拉菜单仅在鼠标悬停时出现。 我在网上尝试了很多解决方案,但运气不好: https://qaquestions.wordpress.com/2012/03/05/selenium-web-driver-some-tricks-using-python/ Selenium无法通过xpath找到option表单元素 使用selenium python从下拉选项中选择值 他们中的大多数假设标签名称是“选
我试图创建一个自动的网络会话,我登录到一个网站,并从下拉框中选择一个选项。我能够使用硒进入页面,但我无法点击打开下拉菜单的栏,然后选择我想要的选项。这是页面的截图,它的超文本标记语言代码:[![在此输入图像描述][1]][1][![在此输入图像描述][2]][2] 我想单击下拉列表中的“降级性能”选项。我有点被困在这里,因为下拉列表的HTML与[this one][3]根本不相似(无法“选择”)。
嗨,我正在尝试自动启动下拉菜单。默认情况下,它的可见性是隐藏的。将鼠标悬停在它上面时,它的可见性属性显示为可见。我可以单击下拉菜单,但是在单击下拉菜单后,我的selenium脚本不能从下拉菜单中选择值。 错误:线程"main"org.openqa.selenium.ElementNotVisibleException异常:无法单击元素 HTML代码段
下面是正确的错误消息:Traceback(最近的调用):文件“C:/users\shishir sinha/pycharmprojects/australia/australia.py”,第33行,in driver.find_element_by_xpath(“.//[@id='ui-menu-0-1']”)。单击()文件“C:\users\shishir sinha\appdata\local
问题内容: 我有一个带有几个矩形元素的对象。使用,我试图单击主要对象之一。但是,使用xpath- checker我无法检测到相同的正确值。 到现在为止,我可以深入了解以下内容: 我的代码如下: 有人可以帮我吗? 问题答案: 尝试执行以下操作,让我知道问题是否仍然存在: 对于元素: 更新资料 最后,这几乎是最佳选择: