我正在尝试使用具有多个属性的find_element_by_xpath来查找属性。
HTML:
<table id="idMainGridhistoryHeader" border="0" class="adodb_dbgrid" qhelp="2.2_zahlavisloupce">
...
</table>
<table id="idMainGridhistory" agname="history" userid="1" entityidcolumnname="hi_id" editable="1" border="0" class="adodb_dbgrid" scrollx="0">
... # id I want to find idMainGridhistory
</table>
我受到了审判this:
driver.find_element_by_xpath("//table[contains(@class, 'adodb_dbgrid') and contains(@userid, '1')]").get_attribute('id')
this:
driver.find_element_by_xpath("//table[@class='adodb_dbgrid'][@userid='1']").get_attribute('id')
但是一切都将返回无法定位元素。有关如何使用多个元素找到它的任何建议吗?
答案 0 :(得分:1)
如何找到第二张表还有很多其他方法。选择一个你更喜欢的: 1.从索引表中列出
driver.find_elements_by_tag_name('table')[1].get_attribute('id')
2。按原始属性
driver.find_elements_by_xpath('//table[@userid="1"]').get_attribute('id')
3。更具体的
driver.find_elements_by_xpath('//table[@agname="history"][@class="adodb_dbgrid"]').get_attribute('id')
答案 1 :(得分:0)
试试这个:
driver.find_element_by_xpath("//table[@class='adodb_dbgrid'and @userid='1']").get_attribute('id')