웹 테이블 안의 첨부파일들을 클릭하고 싶어요

개인적으로 미니프로젝트를 진행중인데 방법이 잘 떠오르지 않아 도움 요청드립니다.
테이블에서 첨부파일을 하나씩 클릭해 저장하는 부분에서 막힙니다.


저는 find children과 get attribute를 사용해 해결하는 쪽으로 생각하고 있는데
테이블은 찾는 것 같은데 그 안의 요소를 클릭하지 못합니다.
해결방법을 아시는 분은 도와주시면 감사하겠습니다.

테이블의 모습과 소스는 이렇습니다

음 자바스크립트 함수 호출도 파일이 다운로드 되어 있나보네요
일단 a tag 들을 추출해서 클릭하는 방식으로 해보시고
안되시면 바로 상위인 div를 클릭하는 방식으로 해보세요.

그래도 안되신다면 invoke javascript로 저 함수에 파라미터를 넣어 호출해보시는 방법도 있습니다.

안녕하세요~
혹시 테이블이면 한 셀을 uipath element로 잡을 수 있지 않나요?
저는 항상 여러개가 있을 수 있는 첨부파일은
첫번째 제목을 잡아서, 셀렉터에서 row번째를 +1하면 다음 파일이 잡히는 셀렉터를 잡았었거든요.
셀렉터를 잡아보지않아서… 궁금하여 여쭤봅니다.

무슨 말씀인지는 알겠는데 아직 함수 호출을 배우지 못해 아쉽습니다 ㅜㅜ selector로 자식노드에 접근하는 방식도 익숙치 않아서… 해결방법이 떠오르지 않네요 혹시 이런 예제들을 볼 수 있는 곳이 있다면 알려주시면 감사하겠습니다^^

안녕하세요 ^^ 말씀하신 내용 무슨 느낌인지는 알겠는데 좀 더 자세히 말씀해주실 수 있으신가요? find children 액티비티 다음 find element 액티비티로 한 셀을 잡는다는 말씀이시죠? 그런데 제가 item.Get(“a”).ToString 이런 방식으로 접근해봐도 제가 원하는 결과가 나오지 않더라구요 ㅜㅜ 더 자세히 알려주실 수 있으신가요?

답변이 늦어 죄송합니다~
제가 말씀 드린 것은 UI Explorer 를 두개를 키셔서
하나로는 첫번째 파일 제목을,
두번째로는 두번째 파일 제목을 잡아보시고
둘이 공통으로 된 셀렉터를 체크 해 주시고, 아마 row에서 1이나 2씩 차이나는 셀렉터가 있을거에요.
tableRow=1, tableRow=2 라고 되어있으면 tableRow=count(숫자 변수)로 바꿔서
해당 셀렉터들을 다 복사해서(중복되는 셀렉터와 위 셀렉터)
그걸로 While을 돌려주세요
count를 1씩 늘리면서 Exists를 하고,
결과값이 False가 나올 때 까지 While을 돌려주시면
몇번째 파일까지 있는지 확인 가능 하시구요
그 셀렉터 그대로 클릭 액티비티 사용하면
있는만큼 다운 받으실 수 있을 것 같네요…

셀렉터를 안쓰시는 이유는 모르겠지만
저는 find childern과 get attribute를 안써봐서
비슷한 문제를 위처럼 했었습니다…

셀렉터가 안잡히신다면 어쩔 수 없지만 한번 도전해보세요!!

HtmlAgility Pack을 사용해서 분석하는 것도 방법입니다.
내용 분석하여 파일명을 찾아서 다운로드 풀패스를 이용하여 HttpRequest 액티비티를 이용하여
링크를 이용해 파일을 직접 다운 처리 할 수 있습니다.

감사합니다. 확인이 늦었습니다 ㅜㅜ 말씀해주신 부분 확실히 알겠고 한번 시도해보겠습니다! 자세하게 설명해주셔서 감사합니다! :smiling_face_with_three_hearts:

1 Like

답변 감사합니다^^ 확인이 늦었습니다 ㅜㅜ 첨부해주신 본문 내용 잘 숙지하고 한번 시도해보겠습니다! 감사합니다! :grinning: