我试图用Selenium ChromeDriver单击多个按钮,应该很容易,我只是按类名找到按钮,因为它们都具有相同的类名,遍历每个按钮并单击。 但是由于某种原因,如果我检查Button的len为0,就好像它不在页面上...
这是HTML:
button1
<span data-fieldid="9537" id="bounceRatingOrderBtn" name="bounceRatingOrderBtn" class="viewCommand viewSize1 viewCommandGreenBtn" data-columnnum="1" data-showonload="1" data-defaultvalue="" data-isrequired="0" data-personalareaviewposition="manage_area" data-ispersonalareaviewable="1" data-ajax_path="//my.yad2.co.il/newOrder/index.php?action=updateBounceListing&CatID=3&SubCatID=0&OrderID=39605635" data-viewcommandactive="1" data-originalelementname="input" xpath="1"> <i class="fa fa-arrow-up"></i> <span>הקפצת מודעה</span></span>
button2
<span data-fieldid="9537" id="bounceRatingOrderBtn" name="bounceRatingOrderBtn" class="viewCommand viewSize1 viewCommandGreenBtn" data-columnnum="1" data-showonload="1" data-defaultvalue="" data-isrequired="0" data-personalareaviewposition="manage_area" data-ispersonalareaviewable="1" data-ajax_path="//my.yad2.co.il/newOrder/index.php?action=updateBounceListing&CatID=3&SubCatID=0&OrderID=39605688" data-viewcommandactive="1" data-originalelementname="input" xpath="1"> <i class="fa fa-arrow-up"></i> <span>הקפצת מודעה</span></span>
button3
<span data-fieldid="9537" id="bounceRatingOrderBtn" name="bounceRatingOrderBtn" class="viewCommand viewSize1 viewCommandGreenBtn" data-columnnum="1" data-showonload="1" data-defaultvalue="" data-isrequired="0" data-personalareaviewposition="manage_area" data-ispersonalareaviewable="1" data-ajax_path="//my.yad2.co.il/newOrder/index.php?action=updateBounceListing&CatID=3&SubCatID=0&OrderID=39594079" data-viewcommandactive="1" data-originalelementname="input" xpath="1"> <i class="fa fa-arrow-up"></i> <span>הקפצת מודעה</span></span>
我的Python代码:
for i in driver.find_elements_by_class_name("viewCommand viewSize1 viewCommandGreenBtn"):
print('here')
i.click()
答案 0 :(得分:0)
复合类在CSS中表示为
classOne.classTwo.classThree {
//...
}
尝试做
for btn in driver.find_elements_by_css_selector('viewCommand.viewSize1.viewCommandGreenBtn'):
btn.click()