selenium通过xpath定位到当前元素的前一个或后一个元素

**目的:**编写RPA流程的时候有多个tr标签,tr标签特征属性一共存在两种,一种是主账号,一种是子账号。主账号tr标签中存在主账号,子账号tr标签和主账号标签在同一级,如果存在子账号tr,那么该子账号使用的账号其实是主账号,所以我们必须获取主账号来判断是否已经存在该账号了,当判断存在子账号tr标签的时候我就要获得上一级主账号的账户号码。

<tr>tr>
<tr>tr>
<tr>tr>
<tr>
  <td>td>
  <td>td>
  <td>td>
  <td>银行账号td>
tr>
<tr>
  <td>td>
    <div>
	  <tbody>
	    <td>币种td>
		<td>子账号td>
		<td>余额td>
	  tbody>
	div>
tr>

使用下面的方法获取银行账号

driver.findElement(By.xpath("//tr/td/div/tbody/td[2]/../../../../preceding-sibling::tr[1]/td[4]"))
  • preceding-sibling::div[1]表示前面的第一个,如果要第二个就写2,依次往前推
  • followling-sibling::div[1]表示后面1个

你可能感兴趣的:(selenium,selenium,测试工具)