从 Python 中选择 AngularJS 应用程序中的下拉列表时,Selenium 出现异常

While Selecting dropdown in AngularJS application from Python Selenium got an exception

我想 select 从 Python Selenium 下拉到 AngularJS 应用程序,但在我的情况下,我有 <i class="dropdown icon"/> 而不是 <select> 当我试图使用 Select class 抛出异常 "Select only works on <select> elements, not on <i>"

那么你能解释一下我如何 select 下拉列表中的元素吗?

谢谢, 兰吉斯·加纳普拉姆

您不能在此处使用 select class,因为它不是您要定位的 <select>。您要做的是针对 angular 下拉列表。 您将不得不为此编写自己的方法。可能首先单击下拉菜单元素并等待下拉菜单打开,然后单击您想要 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>

之类的项目