온라인 서점 간 도서 목록 옮기기
부득이한 사정에 의해 주거래 온라인서점을 알라딘에서 yes24로 옮기게 되었다. 알라딘 골드회원이라서 아깝지만, 어쩔 수 없다.
그런데 가장 중요한 “보관함”에 저장된 구입 예정의 도서 목록을 옮기는 작업이 필요했다.
당연히 알라딘과 yes24가 서로 도서 목록을 export하고 import하는 기능을 제공하지 않는다. 알라딘에서는 엑셀파일로 저장하는 기능을 제공하지만, yes24에는 이 엑셀파일에 저장된 목록을 웹서버에 저장하는 기능을 제공하지 않는다. 역으로 알라딘에서도 그런 기능은 제공되지 않는다.
다소의 수작업을 동원하더라도 옮겨야겠다는 생각이 들었다. 다음과 같은 방법을 사용했다.
1. 일단 알라딘에서 엑셀파일로 저장한다.
2. 엑셀파일에서 ISBN 코드를 제외한 열(column)을 모두 제거했다. 그리고 텍스트 파일로 바꿔서 저장한다.
3. yes24에서 상세검색 기능을 이용하여 몇 개의 ISBN 코드를 입력해서 어떤 URL로 조합되는지 확인한다. 상세검색 페이지 중에서 국내도서 탭을 선택하면 ISBN 코드를 입력할 수 있는 필드가 있다.
yes24의 dynamic page의 URL은 다음과 같다.
http://www.yes24.com/searchCenter/searchresultDetail.aspx?qisbn=ISBN코드값
알라딘의 URL은 다음과 같다.
http://www.aladdin.co.kr/shop/wproduct.aspx?ISBN=ISBN코드값
4. 간단한 스크립트 프로그래밍을 통해 ISBN코드와 URL prefix을 조합하여 URL을 완성한다. 이 목록을 HTML 파일로 저장한다.
5. Opera나 Firefox와 같이 탭브라우징이 가능한 브라우저를 이용하여, 이 HTML 파일의 모든 목록을 Ctrl+Click을 반복하면 수백 개 정도의 도서 목록은 그다지 어렵지 않게 웹페이지를 읽어들일 수 있다. 해당 도서명이 나오는 웹페이지에서 “보관하기”나 “리스트에넣기”등의 버튼을 클릭하여 저장하면 된다.
* 이런 복잡한 과정을 대신해주는 원클릭 서비스를 웹으로 만드는 것도 재미있는 아이템이 될 것이다. 다만 상용 서비스를 제공하기는 어렵고, 단순한 hack 거리 정도는 될 수 있을 것이다.
지난 번에 언급했던 “중고 책 교환 장터 시스템“에 부가적인 기능으로 넣어도 좋을 것 같다.
댓글 한 개
노란북
요즘은 알라딘이 더 낫던데… 예스24는 배송비를 받더라구요…ㅠㅠ