今天遇到的问题是selenium与表格中行和列的问题!
我想要做的事情是统计当前的table有多少行,表格形式如下如所示:
图中所示为2行,我的定位方式是这样的 :
table=driver.find_element_by_id("table1")
trlist=table.find_elements_by_tag_name("tr)
len(trlist)
但是表格的代码(简化后)如下所示:
<tr>
<td>td1</td>
<td>
<table >
<tbody>
<tr>
<td>subtd</td>
</tr>
<tr>
<td>subtd</td>
</tr>
</tbody>
<table>
</td>
</tr>
也就是说每行中还嵌套着小的tr,这样我返回的trlist的长度就变成了6,和我要想要的不相符
解决方法:
我目前的解决方法是通过正则表达式去匹配某列中的值,如果存在则tr+1,最后返回 tr 的长度
但是如果可以直接定位到第一层tr,那就更好了,但是目前还没找到方法
反思:
之前也碰到了好多表格中行和列定位的问题,但是一直忽略了这种情况,还是要多动手,多思考