NGMsoftware

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

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

    팁 앤 테크

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

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

    에디터 웹크롤링 매크로 - 영어 단어를 입력하면 자동으로 해석해주는 매크로 만들기.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 [ 네이버 연관 검색어를 가져오는 방법 ]에 대해 알아보았습니다. 오늘은 사용자가 영어 단어를 입력하면 한국어로 번역해주는 매크로를 만들어 보도록 하겠습니다. 하드코딩으로 영어 단어를 모두 입력해두고, 일치되는 한국어 내용을 보여주는게 아니라 네이버 영어사전의 API를 이용해서 웹으로부터 번역된 내용을 받아오도록 하겠습니다. 우선, 어떻게 동작하는지 분석해야 할 필요가 있는데요. [ 네이버 영어사전 ]으로 이동한 후 검색창에 단어를 입력 해볼께요. 엔지엠 매크로의 이니셜을 입력 해봤습니다. (new generation master)

    gqKnjUD.png

     

     

    그러면, 자동 완성 기능으로 입력한 영어 단어의 해석과 추가적인 내용을 보여줍니다. 크롬 브라우저의 개발자 도구(F12)를 실행하고, 마지막 요청(Request)에 대해 헤더(Header) 정보를 살펴 봅시다. Request URL을 복사한 후 분석해봐야겠죠?

    PAyxgBE.png

     

     

    주소를 보면 원본은 불필요한 정보들도 같이 포함되어 있습니다. 아래 가공한 주소처럼 ac 파라메터와 q 파라메터만 있으면 정상적으로 Json 포멧의 응답(Response)을 받을 수 있습니다.

    # 원본 주소
    https://ac-dict.naver.com/enko/ac?st=11&r_lt=11&q=new generation&_callback=jQuery35105906328150909586_1656567151431&_=1656567151454
    
    # 가공한 주소
    https://ac-dict.naver.com/enko/ac?st=11&q=new%20generation

     

    이전 글에 첨부되어 있는 스크립트를 에디터로 열고, API 주소를 "https://ac-dict.naver.com/enko/ac?st=11&q={검색어}"와 같이 입력해주세요. 그리고, 스크립트를 실행해보세요.

    uA99V6V.png

     

     

    Xml Json 시각화 도구를 보면, 응답에 대한 구조를 알 수 있습니다. 영어 단어 번역의 Json 모델 구조는 이전 글의 연관 검색어보다 약간 더 복잡합니다.

    4xCPDKe.png

     

     

    영어 단어와 번역이 나누어져 있습니다. 배열이 1개가 아닌 3개인데요. 이중에서 두번째는 내용이 없는 빈 배열입니다. 그래서, 배열을 2개 처리하도록 구성해야 할거 같습니다. [ 변수 ]를 하나 더 추가하고, 기존의 배열 변수 아이디를 배열1로 변경하세요. 추가한 배열은 배열2로 하면 될거 같습니다.

    IJXh97N.png

     

     

    여기서 중요한 부분이 나옵니다. 기존에는 하나의 배열만 처리하면 되었기 때문에 [ Foreach 반복 ]을 사용해서 순차적으로 아이템을 빼와서 처리하도록 했습니다. 그런데 이번에는 배열이 2개이므로 하나는 Foreach 반복으로 처리하더라도 번역된 한글은 배열의 인덱스로 가져와야 합니다. 그래서, Foreach 반복 액션의 변수 처리를 아래와 같이 인덱스도 추가해야 합니다.

    NnbttHT.png

     

     

    자~ 영어 단어가 들어있는 첫번째 배열은 Foreach로 반복합니다. 두번째 배열은 Foreach의 반복 횟수를 변수에 저장해서 이 값을 인덱스로 사용하도록 했습니다. 인덱스는 알아냈으니 배열에서 가져오기만 하면 되는데요. 배열에서 인덱스로 값을 가져오려면 [ 배열 값 ] 액션을 사용하면 됩니다. 그러면, 아래와 같이 변수 가져오기가 만들어집니다.

    7w4VHXx.png

     

     

    Foreach 반복은 "영어 단어:번역된 한글"와 같이 쓰도록 구성했습니다. 콜론을 입력하는 방법은 시프트키와 OEM_1(세미콜론)을 누르면 됩니다.

    TeyWixh.png

     

     

    완성된 스크립트를 실행 해보면 아래 동영상처럼 사용자가 입력한 영어 단어에 대해 해석과 추가적인 정보들을 보여줍니다.

     

     

    이미 비슷한 예제를 한번 했었기 때문에 이번에는 정말 쉽고 간단하게 처리할 수 있었습니다. 이외에도 정말 다양하고 유용한 웹서비스들이 많습니다. 네이버나 다음, 카카오등등... 수많은 서비스 제공 업체들이 이런것들을 누구나 쉽게 사용할 수 있도록 해두었으니까요. 영어 단어 매크로 프로그램뿐만 아니라 일본어, 중국어도 가능합니다. 또한, 다른 서비스와 결합해서 뭔가 새로운 것을 만들어 낼수도 있습니다. 아이디어만 있다면요^^;

    ※ 이 예제에서 사용된 스크립트는 첨부되어 있으니 다운로드 받아서 열어보세요.

     

    개발자에게 후원하기

    MGtdv7r.png

     

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

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

    감사합니다~

     

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

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.