NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 웹소켓 API의 웹브라우저 콘트롤을 이용해서 네이버 검색어를 입력하고 검색 버튼을 클릭하는 방법. (InputDispatchM…

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 웹소켓 명령 액션의 MouseClick과 다르게 동작하는 InputDispatchMouseEvent를 사용해도 아래 예제와 동일하게 웹페이지 클릭 매크로를 만들 수 있습니다. 우선, 아래 예제를 참고하여 MouseClick까지 매크로를 작성하세요.

    웹소켓 API의 웹브라우저 콘트롤을 이용해서 네이버 검색어를 입력하고 검색 버튼을 클릭하는 방법. (MouseClick) ]

     

    마우스 클릭 예제를 학습하셨다면 아래와 같이 스크립트가 만들어졌을 겁니다. 저는 미리 테스트 예제를 만들어 두었기 때문에 웹소켓 명령 2개가 더 추가되어 있습니다.

    IJmkdxc.png

     

     

    마우스 클릭 명령은 사용하지 않기 때문에 체크를 해제하고, 아래 첫번째 웹소켓 명령의 옵션을 설정하세요.

    • 메소드 선택: InputDispatchMouseEvent
    • 파라메터: { "type":"mousePressed","x":1234,"y":71,"button":"left","clickCount":1 }

    biRBHVd.png

     

     

    두번째 웹소켓 명령의 속성은 아래와 같습니다.

    • 메소드 선택: InputDispatchMouseEvent
    • 파라메터: { "type":"mouseReleased","x":1234,"y":71,"button":"left","clickCount":1 }

    tBqF1yc.png

     

     

    매크로를 실행하면 아래 동영상과 같이 웹브라우저가 실행되고, 네이버로 이동합니다. 그리고, 검색 키워드를 입력한 후 검색 버튼을 클릭합니다.

     

     

    마우스 클릭과 다른점은 파라메터 설정입니다. 마우스 클릭은 쉽고 간단하게 사용할 수 있습니다. 웹페이지에서 selector를 찾아서 입력 해주면 됩니다. 하지만, 마우스 이벤트는 다양하게 옵션을 설정할 수 있지만, 클릭할 엘리먼트의 위치 값을 찾기가 약간 복잡할 수 있습니다. 간단하게 알아내려면 개발자 도구에서 "Show rulers on hover"에 체크하면 엘리먼트 선택시 위치 값을 확인할 수 있습니다. 이외에도 엘리먼트 정보를 표시해주는 크롬 확장 도구를 사용해도 됩니다.

    XusAMzm.png

     

     

    InputDispatchMouseEvent API

    Parameters

    • type: string (마우스 이벤트의 유형입니다. 값: mousePressed, mouseReleased, mouseMoved, mouseWheel)
    • x: integer (메인 프레임의 뷰포트를 기준으로 한 이벤트의 X 좌표로 CSS 픽셀 단위입니다.)
    • y: integer (메인 프레임의 뷰포트를 기준으로 한 이벤트의 Y 좌표로 CSS 픽셀 단위입니다. 0은 뷰포트의 상단을 나타내고 Y는 뷰포트의 하단으로 갈수록 증가합니다.)
    • modifiers: integer (누른 수정자 키를 나타내는 비트 필드입니다. Alt=1, Ctrl=2, Meta/Command=4, Shift=8)
    • timestamp: TimeSinceEpoch (이벤트가 발생한 시간입니다. 1970년 1월 1일부터 계산된 UTC 시간(초)입니다.)
    • button: MouseButton (마우스 버튼입니다. 값: none, left, middle, right, back, forward)
    • buttons: integer (마우스 이벤트가 트리거될 때 마우스에서 어떤 버튼이 눌러졌는지 나타내는 숫자입니다. 왼쪽=1, 오른쪽=2, 가운데=4, 뒤로=8, 앞으로=16, 없음=0)
    • clickCount: integer (마우스 버튼을 클릭한 횟수입니다. 기본값: 0)
    • force: number (범위가 0 또는 1인 정규화된 압력입니다. 기본값: 0)
    • tangentialPressure: number (범위가 -1 또는 1인 정규화된 접선 압력입니다. 기본값: 0)
    • tiltX: number (Y-Z 평면과 스타일러스 축과 Y축을 모두 포함하는 평면 사이의 평면 각도(범위 [-90,90]), 양의 기울기X는 오른쪽입니다. 기본값: 0)
    • tiltY: number (X-Z 평면과 스타일러스 축과 X축을 모두 포함하는 평면 사이의 평면 각도(범위 [-90,90]), 양의 기울기 Y는 사용자를 향합니다. 기본값: 0)
    • twist: integer (자체 주축을 기준으로 펜 스타일러스의 시계 방향 회전([0,359] 범위의 각도입니다. 기본값: 0)
    • deltaX: number (마우스 휠 이벤트에 대한 CSS 픽셀의 X 델타입니다. 기본값: 0)
    • deltaY: number (마우스 휠 이벤트에 대한 CSS 픽셀의 Y 델타입니다. 기본값: 0)
    • pointerType: string (포인터 유형입니다. 값: mouse, pen 기본값: mouse)


    Return Object

    • errorText: string (탐색이 실패한 경우에만 표시되는 사용자 친화적인 오류 메시지를 반환합니다.)

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.