我要点击的部分:
View All Cards我想很简单。但是我似乎丢失了一些东西。
现在,问题在页面的下方进行了更新。
xpath并不是我尝试使用更正后的xpath的问题,它与使用类名相同。CSS隐藏了该按钮的多个版本,但是在它实际上使用xpath或类名找到的按钮上抛出了common.exception。
我检查了页面是否已正确加载,并且元素在那里。我有一个检查要等到整个页面加载完毕并确定它的屏幕截图。
loadbutton = Driver.find_element_by_xpath("//a[@class='expand-all']")
给出:
所以我试图找到一个锚点onclick:
loadbutton = Driver.find_element_by_xpath("//li[contains(@onclick, 'View All Cards')]")
具有相同的结果。我也尝试过一些正则表达式来捕获id的变化,但是我不确定我在哪里出错。有一个onlick并且已加载,但我看不到找到它。
我会感谢任何可以向我展示我在这方面做错了什么的人。
/更新:
原来,按钮有多个版本,有些是可见的,而另一些则不可见。
我循环了:
loadbutton = Driver.find_elements_by_xpath("//a[@class='expand-all']")
for button in loadbutton:
print "button found"
出现了多个结果。较早的那些被隐藏了,但最后的那些肯定显示在我的浏览器和屏幕截图中。因此,我希望早期的版本会失败,并尝试添加一个.click():except:并且它们都仍然失败。没想到。
进一步更新:
所以我跑了这个:
loadbutton = Driver.find_elements_by_xpath("//a[@class='expand-all']")
for button in loadbutton:
print "button found"
try:
button.click()
except:
e = sys.exc_info()[0]
print e
第一对夫妇给了我这个:
确定,期望CSS将其隐藏。显示的最后两个给了这个:
这样就可以看到他们。它不会单击它们。“常见异常”似乎没有太大帮助。