XPath 사용 : 셀 3 행에서 링크 찾기
문제
테이블에 여러 행이 있습니다. 그 중 하나는 자동으로 클릭하려는 링크입니다. 출발점의 경우 행에 "테스트 질문?"텍스트가 포함 된 마지막 인스턴스가 있습니다.
ID : 1416
편집/승인 이메일 이름 : 제출자 이름
해당 N/A 위치 : 제출자 위치
회원 : 아니요
질문 텍스트 : 테스트 질문? 응답 1 텍스트 :
응답 2 텍스트 :
ID : 1417
편집/승인 이메일 이름 : 제출자 이름
해당 N/A 위치 : 제출자 위치
회원 : 아니요
질문 텍스트 : 테스트 질문? 응답 1 텍스트 :
응답 2 텍스트 :
따라서 // tr [td = 'test Question?'] [last ()]은 "질문 텍스트 : 테스트 질문?"와 비슷합니다.
어쨌든, 그로부터 3 줄로 올라가는 링크가 많은 행이 있습니다. 첫 번째 셀의 링크에 XPath를 원합니다.
이제 위치 ()를 사용하려고했지만 // tr [position () = (// tr [td = 'test question?'] [last ()] [position ()] -3] Just Isn ' T를하는 올바른 방법은 좋은 예를 찾을 수 없습니다.
고맙습니다
데이브
해결책
그것은 최소한 말하기에 꽤 끔찍한 xpath가 될 것이지만, 당신은보고 있습니다. 축 로 시작 ancestor::tr
그리고 선행 형제. 터널까지 <tr>
, 그런 다음 3 명을 가로 질러 (참조해야합니다 position()
여기서 생각합니다) 그리고 그 다음에서 당신의 목표까지 정상적인 방식으로 내려갑니다.
편집 : 생각보다 쉽게, 선행 형제는 거꾸로 수 있습니다.
./ancestor::tr/preceding-sibling::tr[3]/td[1]/a