군침이 싹 도는 코딩
open api 이용하는 방법 본문
class NaverSearchResource(Resource) :
def get(self):
# 클라이언트가 보내는 데이터를 받아온다
keyword = request.args.get('keyword')
limit = request.args.get('limit')
# 네이버 API를 호출
### Restful Open API를 호출할때 사용하는 라이브러리 => requests
data = {'query':keyword,'display':limit}
headers = {'X-Naver-Client-Id':Config.NAVER_CLIENT_ID,'X-Naver-Client-Secret':Config.NAVER_CLIENT_SECRET}
response = requests.get('https://openapi.naver.com/v1/search/news.json', data, headers = headers)
response = response.json()
# response['items']
title_list = []
for row in response['items'] :
title_list.append(row['title'])
return {'result':'success','items':title_list}, 200
# open api를 이용할떄 쓰는 함수는 requests다
이것은 클라이언트가 보낸 데이터를 받을때 사용하는 request와는 다른것이다
사용법은 사용하고싶은 open api가 있는곳에서 설명서를 보고한다
이 예제는 네이버의 뉴스검색 api를 활용하였다
파라미터로는 호출 url, data, hearders가 필요하다
# 호출 url은 여기있다
# 메서드를 GET으로 사용하라고 했으므로 .get을 써준다
# data에는 필수로 들어가는것은 무조건 넣어주고 나머지는 선택해서 넣는다
위 에제에서는 검색어와 결과개수만 넣었다
# 헤더부분은 참고사항과 요청예를 보고 잘 카피해서 넣어주도록한다
# 결과를 출력해보면 잘 가져온다
해당 예시에서는 자동차라는 검색어를 30개까지 제목만 가져오게 하였다
'Python > Flask' 카테고리의 다른 글
포스트맨 API 문서화하기 (0) | 2023.03.10 |
---|---|
Flask 기본 구조 (0) | 2023.01.13 |
사진과 글을 DB에 저장하는 API (0) | 2023.01.13 |
S3에 저장된 이미지 객체 탐지 API (1) | 2023.01.12 |
S3에 이미지 업로드하는 API (0) | 2023.01.12 |