자바스크립트를 사용할 줄 아는 사람들이 Uipath에 Inject Js Script가 있기 때문에 사이트에서 단순히 데이터를 가져오거나 입력값이 필요할 때 스크립트로 작성하는 케이스도 있을 텐데 분명 Console에서는 문제없이 되는 걸 확인했는데 Uipath로 옮기면 작업을 원하는 대로 결과물을 주지 않고 아무 반응이 없을 겁니다
가장 단순하게 네이버 검색창에 자바스크립트를 통해 입력하는 방식이라고 할 때
해당 스크립트는 document.getElementsByClassName("search_input")[0].value = "uipath" 이렇게 작성이 됩니다
Uipath에서 작업을 하는 경우 먼저 Open Browser를 통해 창을 열어야 스크립트 사용이 가능합니다
아래와 같이 작성을 하고 해당 프로세스를 실행하면 아래 화면과 같이 inject Js Script 'Input query':TypeError: r is not a function이라고 나옵니다(실제 작업은 네이버 검색창에 uipath라고 입력은 했지만 에러 발생)
RemoteException wrapping UiPath.Core.ElementOperationException 에러 발생

그럼 에러가 발생하지 않게 하려면 어떻게 해야 하는가 아래와 같이 function을 추가해 주면 됩니다

스크립트를 응용하자면 return을 통해 텍스트 값을 가져올 수 있습니다

2번째 스크립트 내역
"function(e){
e = document.getElementsByClassName('total_tit')["+ count_Check.ToString +"].innerText
return e
}"
네이버에서 uipath 검색 후 타이틀 제목을 가져오는 스크립트입니다 count_Check 변수는 0부터 시작해서 증가하여 여러 개의 값을 리턴 받을 수 있습니다

대부분 소스를 사용하기보단 액티비티 위주로 사용할 텐데 만약 액티비티로 잡히지 않는 값이나 이슈가 있는 경우 스크립트를 통해 데이터 값을 가져올 수 있습니다
'Uipath' 카테고리의 다른 글
Uipath 통화 입력 방법 (0) | 2023.10.16 |
---|---|
Uipath Queue 사용법 (0) | 2023.10.16 |
Uipath 숫자를 영어로 or 영어를 숫자로 변환하는 방법 (0) | 2023.06.13 |
Uipath 모던 끄는 방법 (0) | 2023.06.08 |
Uipath Orchestrator Http Request 사용법 (0) | 2023.06.07 |
댓글