Python 기초(21) - API쓰는 법

아지어라·2025년 4월 9일

python

목록 보기
21/26

1. 아 API 쓰고싶다

https://developers.google.com/books/docs/v1/getting_started?hl=ko

ㅇ 위의 링크로 들어가면 google books api 문서로 넘어감
ㅇ 어떻게 쓰는 지 나온다


2. 쓰고 싶은 API 찾았는데

ㅇ 일단 첫번째로 통신하기 위해선 requests 라는 것을 import해야함
ㅇ 그러고 뭐 어떻게 쓸거냐면 url을 먼저 입력해야함

ㅇ 위는 기본 url임
ㅇ def처럼 조건 더 줄 수 있음. 그것은 api문서 더 확인하기
ㅇ ?q=내용 & maxResults=내용 & startIndex=내용 이렇게 씀
ㅇ q에는 검색할 내용, maxResults는 몇개 보여줄건지
ㅇ startIndex는 몇번째 책 부터 보여줄건지

ㅇ 그러고 나서 요청하는거임
ㅇ response 변수에 requests해서 api_url한거 가져오기(.get(api_url))
ㅇ 연결 코드가 정상이면(.status_code == 200)
ㅇ json 형식으로 return
ㅇ 아니라면 api요청 실패 라는것을 print하고 none을 return


3. 오 가져왔다고? 그러면 봐야지

ㅇ 위 처럼 json으로 가져오는 거임.

ㅇ 그래서 내가 책을 보여줄건데 (위의 것을 시각화 할건데)
ㅇ books가 아니거나 books에 item이 없으면
ㅇ 검색 결과가 없다는 거임

ㅇ 그래서 books["items"]에 item이 있을때
ㅇ 값을 다 가져오는거임
ㅇ 책 정보, 제목, 작가, 퍼블리셔, 설명 등등


4. 그래서 위의 것을 실행해야지

ㅇ main() 함수 만들것
ㅇ queryUser을 input으로 받아 검색할 것을 가져옴
ㅇ start_index를 0으로 설정해 처음부터 보여줄거고
ㅇ max_Result를 10으로 설정해 10개만 보여달라는 것임

ㅇ 그래서 무한루프 돌림
ㅇ books에 fetch_books로 (검색내용, 몇번부터, 몇개까지)
를 위에서 설정한것으로 받아서 보여달라는거임

ㅇ 가져올 게 없으면 (not books.get("item")
ㅇ 결과가 없다고 출력하고 break하기
ㅇ 그게 아니면 display_books(books)로 책 찾은거 보여주기

ㅇ 그리고 그 다음에 값을 input으로 받기
ㅇ 받은 값이 n이라면 다음 장으로 넘김 그게 아니라면 break
ㅇ 그게 아니면 start_Indx에 max_Results만큼 더해서 다음 몇개인지 만들기
ㅇ 그러고 페이지 번호 표시하기

ㅇ 그렇게 메인 실행


5. 실행 결과

ㅇ 이런식으로 출력됨

ㅇ n누르면 10개 더 보여줌

ㅇ 다른거 누르면 꺼지게 하는거임

profile
안녕하세요

0개의 댓글