43. 파이썬으로 네이버 Open API를 사용하여 도서 검색하기(xml)

안녕하세요. 언휴예요.

 

앞에서 네이버 개발자센터에서 제공하는 Open API 서비스를 이용하여 도서 검색하는 프로그램을 작성해 보았어요. 이 때 사용한 방식은 Json 방식을 사용하였는데 이번에는 XML 방식으로 사용하는 것을 살펴볼게요.

 

먼저 import 구문을 작성합시다. urllib.request를 이용하여 Open API 서비스를 요청할 거예요. 그리고 요청 결과를 분석하기 위해 BeautifulSoup을 사용합니다.

 

앞에서 Json 방식으로 도서 검색을 요청했던 부분입니다. 이 부분은 Open API 서비스를 요청하는 부분으로 차이가 있는 부분은 url부분만 차이가 있습니다.

 

이번에는 검색한 도서 한 권의 정보를 출력하는 showitem 기능을 구현합시다. 앞에서 BeautifulSoup 사용법을 소개하면서 부모에서 자식 태그에 접근할 때 “부모.자식” 형태로 접근한다고 하였습니다. 그리고 내부 문자열을 접근할 때 get_text()함수를 이용합니다.

 

이번에는 프로그램 진입점을 작성합시다. 질의를 요청하는 부분까지는 같습니다.

 

BeautifulSoup을 이용하여 결과 내용과 ‘html.parser’를 전달하여 파싱에 사용할 개체를 구해옵니다.

 

파싱에 사용할 개체의 find_all 함수에 도서 한 권의 정보를 갖고 있는 요소 이름인 ‘item’을 전달하여 전체 도서 목록을 포함하는 개체를 구해옵니다.

 

전체 도서 목록에서 각 도서 목록에 접근하여 해당 도서의 정보를 출력합니다. 이 때 한 권의 책의 정보를 출력하는 것은 앞에서 작성한 showitem 함수를 호출하세요.

 

#진입점 함수를 main으로 지정

 

다음은 실습한 전체 소스 코드와 실행 결과 화면입니다.

[그림 1] 실행 결과 화면
[그림 1] 실행 결과 화면