K_blueprint

Naver API의 사용법 본문

도구 & 정보 정리

Naver API의 사용법

GODAGO 2023. 11. 28. 16:15
728x90
반응형

네이버 오픈 API 이미지

- 목 차 -

  • API의 개념
  • 네이버 오픈 API의 개념
  • 네이버 오픈 API의 종류
  • 네이버 오픈 API의 사용 예시 및 특징
  • 네이버 오픈 API의 사용법
    • "아이폰15", "아이폰"의 네이버 검색 트렌드 살펴보기 및 결과분석

● API의 개념

API란?

  • 한 소프트웨어가 다른 소프트웨어의 기능을 사용하기 위하여 중간에 존재하는 "연결점" 같은 존재
  • "Application Programming Interface"의 약자로 '응용 프로그램 프로그래밍 인터페이(*인터페이스 : 두 애플리케이션 간의 서비스 계약)
  • 클라이언트 - 서버와 같이 서로 다른 프로그램에서 요청과 응답을 주고받을 수 있도록 만든 체계이다.

- 보통 프론트와 백엔드에서 개발을 할 때 서버와 클라이언트가 서로 정보를 어떻게 주고받을지에 대해 api의 형태로 미리 정의하고 개발하는 것이 일반적이다.

 

- 웹 기반의 서비스를 개발할 경우 웹 주소 형식을 통해 정보를 요청하고 전달받는 방식을 사용하기에 API의 사용법을 아는 것이 중요하다.

 

● Naver 오픈 API의 개념

Naver API란?

  • 네이버 플랫폼의 기능을 외부 개발자가 쉽게 이용할 수 있게 웹 또는 SDK 형태로 공개한 기술
  • 네이버의 오픈 API는 인증 여부에 따라 아래의 '로그인 방식'과 '비로그인 방식'의 2가지 오픈 API로 분류된다.

(로그인 방식의 오픈 API)

- '네이버 로그인'의 인증을 받아 접근 토큰(access token)을 획득해야 사용할 수 있는 오픈 API

- API를 호출할 때 네이버 로그인 API를 통해 받은 접근 토큰의 값을 전송해야 한다.

- Ex.) '네이버 로그인', '카페', '캘린더' 등이 로그인 방식의 오픈 API로 분류된다.

 

(비로그인 방식의 오픈 API)

- HTTP 헤더에 클라이언트 아이디와 클라이언트 시크릿 값만 전송해 사용할 수 있는 오픈 API

- 네이버 로그인의 인증을 통한 접근 토큰을 획득할 필요가 없다는 특징이 있다.

- Ex.) '검색', '단축 URL', 'Clova Face Recognition', 'Papago 번역' 등이 비로그인 방식의 오픈 API로 분류된다.

 

● 네이버 오픈 API의 종류

네이버의 오픈 API 종류

 

(위의 이미지는 네이버에서 현재 제공하고 있는 오픈 API의 목록이다. 여기서 유의할 점은 어떤 API를 사용하느냐에 따라 일정 횟수에 따른 호출 제한이 걸려있거나 그 외에 제한되는 부분이 존재하며 "유료 서비스" 또한 존재하기 때문에 해당 API를 사용해서 개발이나 활용을 하고자 한다면 먼저 호출제한 사항을 숙지하는 것이 좋다.)

 

 

● 네이버 오픈 API의 사용 예시 및 특징

- 예를 들어 서비스 API의 하위 항목인 '데이터 랩'에 있는 '통합 검색어 트렌드'와 '쇼핑인사이트' 두 가지의 오픈 API를 활용한다고 했을 때 다음과 같은 특징들이 있다.

 

(통합 검색어 트렌드 : 네이버 통합검색에서 발생하는 검색어를 연령별, 성별, 기기별로 세분화해서 조회가 가능한 API)

 

(쇼핑인사이트 : 네이버 통합검색의 쇼핑 영역과 네이버 쇼핑 서비스의 검색 결과에서 사용자가 클릭한 데이터를 조회할 수 있는 API)

 

( 특 징 )

  • 서비스 개발 시간의 단축
  • 서비스의 개인화 가능
  • 개발자가 복잡한 기능을 프로그래밍 하지 않고도 원하는 서비스 개발 가능
  • 오픈 API를 조합하여 새로운 서비스를 개발하는 것이 가능

 

네이버 오픈 API의 사용법

- "아이폰15", "아이폰"의 네이버 검색 트렌드 살펴보기 및 결과분석

 

여기서부터는 실제로 Naver API를 사용하여 최근 출시되었던 "아이폰15", "아이폰"의 네이버 검색 트렌드를 살펴보고 데이터를 바탕으로 결과를 분석해 보는 실습입니다:-)

 

(클릭하는 곳은 형광색 마크로 표시가 되어있으며 큰 순서는 'Naver application 등록' > 'vs코드 내에서 Python코드 수정' > 'CMD에서 Python 파일 실행'입니다.)

 

1. 네이버에 '네이버 API'를 검색하고 개발자 센터에 접속합니다.

 

 

 

2. 상단의 작업바에 있는 'application'을 누르고 'application 등록'을 클릭해 줍니다.

 

 

 

3. Application 이용신청을 등록합니다.

(이름은 아무거나 하셔도 되고 웹 서비스 URL 또한 본인이 보유하고 있는 홈페이지나 개인 블로그 주소를 적어주시면 됩니다. / 사용 API : 데이터랩(검색어 트렌드), 환경추가 : WEB 설정)

 

 

4. Naver application을 등록하고 'Client ID'와 'Client Secret' 코드를 발급받습니다.

 

 

 

5. 상단의 작업바에 있는 'Documents'를 누르고 '서비스 API'의 '데이터랩'을 클릭해 줍니다.

 

 

 

6. 이후에 통합 검색어 트렌드의 목록에 있는 Python을 클릭해 줍니다.(저는 Python을 사용하여 실습을 진행하지만 다른 언어로도 가능합니다!)

 

 

 

7. Python 코드가 있는 위치까지 이동하게 되면 해당 코드를 복사해서 VS코드에 붙여 넣기를 해줍시다.

 

 

 

8. VS코드에 복사를 했다면 여기서 딱 3가지만 수정하시면 됩니다.

- (Naver Application 등록으로 발급받은 ID와 Secret 코드를 표시해 둔 자리에 넣고 'body'의 내용을 아래의 내용으로 수정해 줍니다.)

-> body = "{\"startDate\":\"2023-08-15\",\"endDate\":\"2023-10-15\",\"timeUnit\":\"date\",\"keywordGroups\":[{\"groupName\":\"아이폰15\",\"keywords\":[\"아이폰15\"]},{\"groupName\":\"아이폰\",\"keywords\":[\"아이폰\"]}],\"device\":\"pc\",\"ages\":[\"1\",\"2\"],\"gender\":\"f\"}";

 

(위의 body의 내용은 여성을 기준으로(gender : f), '아이폰'과 '아이폰15'의 검색어가 2023-08-15~2023-10-15의 기간 동안 얼마나 검색이 되었는지 대략적으로 알 수 있도록 조건을 설정한 것입니다.) 

 

 

 

9. 소스코드의 수정이 완료되었다면 파일을 저장해 줍니다.

(저는 '문서' 파일에 'Untitled0.py'의 이름으로 저장했습니다.)

 

 

 

10. 그리고 파이썬 파일이 저장된 곳으로 가서 저장된 파이썬 파일의 속성에 나와있는 경로를 복사해 줍시다.

 

 

 

11. CMD를 실행시키고 다음의 명령어를 입력해 줍니다.

- cd '속성에서 복사해 온 파일이 있는 위치'

- python '파일명'.py - (python3 '파일명'.py 또는 py '파일명'.py도 가능합니다.)

 

 

 

12. 실행시켜 보면 다음과 같은 정렬되지 않은 데이터 뭉터기를 보실 수 있습니다.

- 자세히 보면 날짜별로 저희가 지정한 검색어가 얼만큼 검색이 되었는지 대략적인 데이터 값이 나와있습니다.

 

 

 

(13. 위의 데이터를 토대로 엑셀에 그래프를 만들어보면 아래의 사진과 같습니다.)

- 아래의 그래프는 8월만 반영해 둔 그래프입니다.

 

 

 

 

여기까지 Naver의 오픈 API 중 '검색어 트렌드'를 활용하여 검색어 트렌드를 분석해 보았습니다.

 

여기서 사용한 API가 아니더라도 다양한 API를 사용하여 많은 것들을 만들어보실 수 있으니 다른 것들도 한 번씩 사용해 보셔도 재밌을 것 같습니다:-)

728x90
반응형

'도구 & 정보 정리' 카테고리의 다른 글

보안 관련 용어 정리(1)  (0) 2024.03.04
'000webhost'를 사용한 무료 웹 호스팅 해보기  (2) 2023.12.29
BUN  (2) 2023.11.15
IIS(Internet Information Service)  (0) 2023.11.14
Tomcat  (0) 2023.11.14