从Python Selenium选择AngularJS应用程序中的下拉列表时遇到了异常

时间:2017-04-19 12:03:33

标签: python angularjs selenium webautomation

我想从Python Selenium中选择AngularJS应用程序中的下拉列表,但在我的情况下,当我尝试使用Select类时,我有<i class="dropdown icon"/>而不是<select>,它会抛出一个例外,例如“Select only works”在<select>元素上,而不在<i>

那么请你解释一下如何在下拉列表中选择元素。

谢谢, Ranjith Ganapuram

1 个答案:

答案 0 :(得分:0)

您不能在此处使用select类,因为它不是您要尝试定位的<select>。你要做的是针对角度下拉。 你必须为此编写自己的方法。可能首先单击下拉元素并等待下拉列表打开,然后单击要选择的元素。

<div class="text">CS47L90</div>
    <div class="menu transition hidden" tabindex="-1">
        <!-- ngRepeat: item in items --> 
        <div class="item ng-binding ng-scope active selected" ng-repeat="item in items" data-value="1" style="">CS47L90</div>
        <!-- end ngRepeat: item in items --> 
        <div class="item ng-binding ng-scope" ng-repeat="item in items" data-value="2">CS47L91</div>
        <!-- end ngRepeat: item in items --> 
        <div class="item ng-binding ng-scope" ng-repeat="item in items" data-value="3">WM1840</div> 
    </div>
</div>

首先定位div class="text">CS47L90</div>,让webdriver等待打开列表,然后点击<div class="item ng-binding ng-scope" ng-repeat="item in items" data-value="3">WM1840</div>

之类的项目