NGMsoftware

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

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

    팁 앤 테크

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

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

    에디터 웹크롤링 매크로 - 네이버 연관 검색어 가져오기. (검색어 분석 및 마케팅 매크로 만들기.)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 오늘은~ 웹크롤링에 대해 알아볼건데요. 그중에서도 네이버 연관 검색어를 어떻게 가져오는지 그리고, 검색 키워드와 연관된 검색얼를 어떻게 활용해야 하는지에 대해 알아보도록 하겠습니다. 참고로~ 저는 마케팅과 관련된 업무를 해본적이 없기 때문에 검색 키워드로를 엔지엠소프트웨어에서는 이렇게 사용하고 있구나 정도로만 이해해 주시면 좋을거 같습니다^^; 테스트를 위애 엔지엠 에디터를 실행하고 새로운 스크립트를 하나 추가하세요.

    cnOuw3h.gif

     

     

    항상~ 뭔가를 만들때는 조사와 분석이 필수입니다. 무턱대고 시작하면 실패할 확률이 높아지기 때문인데요. 꼭 소프트웨어 개발뿐만 아니라 세상 모든 일들이 조사와 분석을 충분히 한 후 진행해야 실패가 없습니다. 자~ 연관 검색어를 가져오기 위해서는 여러가지 방법들이 존재합니다만, 오늘은 가장 간단한 방법을 알려드리도록 할께요. 우선, 네이버에 접속해서 검색어에 "매크로"를 입력 해보세요. 아래 그림과 같이 매크로와 관련된 검색어들을 목록으로 보여줍니다.

    ※ 매크로 연관 검색어에 엔지엠 매크로도 나오면 정말 좋겠지만... 인지도 낮아서 그런지 안나오는군요^^

    AKiLOXZ.png

     

     

    연관 검색어를 어떻게 가져올지 분석을 해봐야 합니다. 참고로, 웹개발을 오래 하신 분들은 웹페이지가 어떻게 동작하는지만 봐도~ 이미 머리속에 그려지고 있을겁니다. 일단, 부분 페이지가 변화하고 있다는걸 눈치채야 합니다. 키보드로 하나 하나 입력할 때 마다 연관 검색어가 변화하면서 실시간으로 반영되고 있습니다. 그렇다는 의미는 비동기로 서버에 요청(Request)과 응답(Response)이 발생하고 있다는 뜻입니다. 포털 사이트들은 SPA(Single Page Application)를 도입하기엔 열러가지 문제들이 있지만, 대부분의 회사들이 SPA를 사용하고 있고, 핵심은 비동기 콜백입니다. 검색창도 비동기 콜백으로 되어 있습니다.

     

    구글 크롬에서 F12를 누르면 개발자 도구가 표시됩니다. 개발자 도구에서 네트워크(Network)탭을 클릭한 후 네이버에서 "매크로"를 입력 해보세요. 그러면, 네이버 검색엔진 서버로 입력한 키워드의 연관 검색어를 요청하고, 응답으로 Json포멧의 연관 검색어 목록을 받을 수 있습니다.

     

     

    네이버로 요청하는 연관 검색어의 쿼리는 아래와 같습니다. 연관 검색어를 요청하는 내용은 q(Query 아니면 Question이겠죠? 아마 쿼리가 맞을듯 합니다.) 다음에 나오는 부분이라서 이건 필수 파라메터일겁니다. 그리고, 나머지는 대부분 필요 없는 부분일거예요. st=100 파라메터도 필수입니다.

    https://ac.search.naver.com/nx/ac?q=매크로&con=0&frm=nv&ans=2&r_format=json&r_enc=UTF-8&r_unicode=0&t_koreng=1&run=2&rev=4&q_enc=UTF-8&st=100&_callback=_jsonp_3

     

    그래서, 주소에 정리한 내용을 다시 요청해보면 동일하게 연관 검색어 목록을 가져오는걸 알 수 있습니다.

    https://ac.search.naver.com/nx/ac?q=매크로&st=100

     

    Restful API가 GET 이라서 가능한 부분입니다. POST로 되어 있다면 다른 방법을 이용해야 합니다. 이 부분은 기회가 되면 나중에 다시한번 글을 작성하도록 할께요. 이제 엔지엠 에디터에서 [ 웹서비스 ] 액션을 추가한 후 주소에 "https://ac.search.naver.com/nx/ac?q=매크로&st=100" 이 내용을 넣어줍니다. 그리고, 컨텐츠 처리 옵션을 재이슨(Json)으로 변경하세요.

    mfcoREM.png

     

     

    매크로를 실행하면 아래 동영상과 같이 요청에 응답으로 Json 포멧의 연관 검색어 목록을 받아옵니다. 결과를 보니 검색어 파라메터의 q가 쿼리가 맞군요^^;

     

     

    응답 결과를 클릭 해보면, 아래와 같이 트리 구조로 내용을 확인할수도 있습니다. 아래 내용을 보면 items안에 10개의 항목이 있고, 그 안에 첫번째로 연관 검색어들이 들어 있습니다.

    6mWCm2M.png

     

     

    위와 같은 구조를 확인 했으면 [ Json 모델 ] 액션을 통해 연관 검색어만 추출해야 합니다. 그전에 [ 변수 ]를 2개 추가하고 각각 이름을 배열연관 검색어로 설정하세요.

    wjLYs8l.png

     

     

    Json 모델은 아래와 같이 속성을 설정 해줍니다. 네이버로부터 연관 검색어를 받아온 후 이 내용을 변수에 저장해줍니다. 그리고, Json 모델에서 이 데이타로 모델을 만들어줍니다. 속성 이름은 items이지만, 하이어라키(Hierarchy, 계층) 구조를 가지고 있으므로 items 아래 10개 아래 0번째를 모두 가져올 수 있게 해야 합니다. 그래서, 속성 이름에 "items/0/0"과 같이 슬래시로 인덱스를 적어줘야 합니다.

    yFK0jsa.png

     

     

    변수 처리 관련해서는 아래 동영상을 참고하세요.

     

     

    메모장에 연관 검색어를 모두 기록하기 위해 [ 마우스 클릭 ] 액션과 [ 텍스트 쓰기 ] 액션 그리고, [ 키보드 입력 ] 액션을 추가하세요. 그전에 배열을 반복할 수 있는 [ Foreach 반복 ] 액션도 추가 해줍니다. 전체적인 모양은 아래 그림과 같습니다.

    VT1DiJ0.png

     

     

    마우스 클릭은 메모장에 텍스트를 쓰기 위해 미리 클릭해두는 액션입니다. 그리고, Foreach 반복 액션은 배열을 인덱스 없이 무조건 순차적으로 하나씩 빼와서 변수에 넣어줍니다. [ For 반복 ]을 사용해도 되지만, For 반복을 쓰게되면 항목의 갯수를 미리 알아내야 하기 때문에 가변적인 길이인 경우 Foreach 반복을 사용하는게 더 효과적입니다. 마지막으로 메모장에 연관 검색어를 쓰고, 줄바꿈을 해주는 키보드 입력 액션이 추가 되었습니다. 스크립트를 실행하고 결과를 확인 해볼까요?

     

     

    이번에는 검색어를 사용자로부터 입력 받은 후 네이버로부터 내용을 가져올 수 있도록 해보겠습니다. 사용자에게 검색어를 입력 받을 메세지 박스가 하나 필요합니다. 아래 그림과 같이 사용자로부터 입력 받은 검색어를 저장할 변수를 하나 추가하세요. 그리고, [ 입력 메세지 박스 ]의 결과 값을 변수에 저장 해줍니다.

    R1CXMt1.png

     

     

    검색어를 웹서비스 액션에 전달해야 합니다. 변수는 이미 처리했으므로, 아래와 같이 직접 변수 입력으로 검색어를 변수로부터 가져올 수 있게 합니다.

    lBGRnvh.png

     

     

    아래 동영상과 같이 매크로를 실행하고, 검색어에 리니지나 오딘 기타 연관 검색어를 가져올 키워드를 입력 해보세요.

     

     

    네이버 연관 검색어를 잘 가져오고, 메모장에 입력도 잘 됩니다. 이렇게해서 간단하지만~ 네이버 연관 검색어 매크로를 만들어봤습니다. 너무 다양한 액션들을 사용해서 처음 엔지엠 매크로를 접하신 분들은 다소 어려움이 있을겁니다. 혹시라도 비슷한 문제를 해결하기 위해 매크로를 제작 중이시라면~ 언제든지 고객 서비스방에 문의 해주세요^^ 제작 방법에 대해서 알려들릴께요!

    ※ 이 예제에서 사용된 스크립트는 첨부 파일로 추가되어 있습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

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

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

    감사합니다~

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

    첨부파일

    댓글목록

    profile_image

    다람이님의 댓글

    no_profile 다람이 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일 Date

    업무용으로 참고.