[zero-base/] DS Part 4. EDA - 32일차 스터디 노트

손윤재·2024년 1월 16일

제로베이스 DS 22기

목록 보기
33/55
post-thumbnail

실습 도구 6️⃣

【네이버 검색 API 사용】


1. 네이버 API 사용 등록


2. 네이버 검색 API 사용

네이버 검색 Open API 예제는 블로그 검색이다.

  • https://developers.naver.com/docs/serviceapi/search/blog/blog.md#python

  • 네이버 검색 API 예제는 블로그부터 전문자료까지 호출방법이 모두 동일하므로 blog검색만 대표 예제로 올려져 있다.

  • urllib : http 프로토콜에 따라서 서버의 요청/응답을 처리하기 위한 모듈

  • urllib.request : 클라이언트의 요청을 처리하는 모듈

  • urllib.parse : url 주소에 대한 분석

    import os
    import sys
    import urllib.request

    client_id = "**************"
    client_secret = "*******"

    encText = urllib.parse.quote("파이썬")
	// JSON 요청 URL
    url = "https://openapi.naver.com/v1/search/blog?query=" + encText
	// XML 요청 URL
    // url = "https://openapi.naver.com/v1/search/blog.xml?query=" + encText

    request = urllib.request.Request(url)
    request.add_header("X-Naver-Client-Id",client_id)
    request.add_header("X-Naver-Client-Secret",client_secret)

    response = urllib.request.urlopen(request)
    rescode = response.getcode()

    if(rescode==200):
        response_body = response.read()
        print(response_body.decode('utf-8')) // 글자로 읽을 경우, decode utf-8 설정 필요
    else:
        print("Error Code:" + rescode)
  • 다른 카테고리로 검색할 때는 URL만 바꿔주면 된다.

    • 책: book
    • 카페: cafe
    • 쇼핑: shop
    • 백과사전: encyc
	url = "https://openapi.naver.com/v1/search/<검색카테고리>?query=" + encText
  • 영화 검색 서비스는 종료되어 404 오류가 발생한다.
profile
ISTP(정신승리), To Be Data Scientist

0개의 댓글