AR삽질러

카카오 API를 이용한 이미지 검색 및 저장 본문

Python

카카오 API를 이용한 이미지 검색 및 저장

아랑팡팡 2023. 12. 4. 18:02
728x90

 

카카오 API를 이용한 이미지 검색 및 저장

 

1. 카카오 개발자 사이트접속

https://developers.kakao.com/

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

2. 상단 [문서]를 클릭하며 [검색 API가이드]의 [Daum검색]을 선택

 

3. [Daum 검색] - [이해하기] 를 선택하면 다음검색 API에 대해 다양한 기능을 설명한다. Daum검색 API는 포털 사이트 Daum에서 방대한 웹 문서, 동영상, 이미지, 블로그, 책, 카페를 검색하는 기능을 제공하며 검색 결과는 JSON객체로 전달되어 서비스에서 자유롭게 출력하거나 활용할 수 있다.

 

4. [문서] -> [Daum 검색] -> [REST API]를 통해 다음 검색 API구현 방법을 배울 수 있다. 이 중 [REST API 테스트 도구] 버튼을 통해서 미리 사용해 볼 수도 있다.

 

5. 스크롤밑 [이미지 검색] 에 대한 정보들인 기본정보, Request의 Parameter, Response의 meta와 documents, 샘플을 볼 수 있다.

 


 

VSCode Python을 활용하여 이미지 검색

1) 카카오 개발자 센터에서 Daum검색 이미지 API 키를 발급 받아 인증과정에 사용한다.

import requests
import json

def save(fileName, img_url):
    reslmg = requests.get(img_url)
    print(img_url)
    if reslmg.status_code == 200:
        with open('C:/myPythonProject/Temp/%s.jpg' % fileName, 'wb') as fp:
            fp.write(reslmg.content)

searchWord = input('검색할 이미지를 입력 : ')

url = "https://dapi.kakao.com/v2/search/image"

headers = {"Authorization": "KakaoAK 여러분의 RESTAPI키 값을 입력해주세요"}
data = {"query" : searchWord}

response = requests.get(url, headers=headers, data=data)
if response.status_code == 200:
    #print(response.content)
    count = 0
    for image in response.json()['documents']:
        img_url = image['image_url']
        count = count + 1
        save(searchWord + str(count), img_url)

 

1) save 함수

  - 다운로드할 저장할 파일이름과 이미지의 URL을 인자로 받는다.

  - Python의 requests 라이브러리를 사용해 이미지 데이터를 다운로드하고 reslmg를 로컬 경로에 저장한다.

2) 검색어 입력

  - 사용자로 부터 검색할 이미지의 키워드를 입력 받는다.

3) API요청

  - 카카오 개발자 샌터의 이미지 검색 API 엔드포인트와 필요한 헤더를 설정한다.

4) API 요청 및 응답 처리

  - request.get 을 이용해 API검색어를 담아 요청을 보내고 응답을 받는다.

 - 응답이 성공하면 URL을 추출한다.

5) 이미지 저장

 - 추출된 각 이미지 URL에 대해 save함수를 호출하여 이미지를 로컬 시스템에 저장한다.

 

728x90
반응형
LIST