디지털 라이프 電子的生活 My Digital Life/잡다한 기술 관련 것들

CD 보유 목록 정리 프로그램을 만들어보고 있습니다.

미친도사 2025. 2. 19. 19:56

우리 컬렉터들의 숙제이기도 한데, CD나 블루레이 보유 목록 정리가 숙제죠.

스마트폰 앱이 있긴 한데, 국내 발매 타이틀은 아무래도 좀 아쉽기도 하고요.

 

외부 프로그램에서 데이터베이스 조회가 가능한 Discogs, MusicBrainz, 알라딘을 활용해 조회하고 구글 시트의 목록 파일 하나에 내용을 추가하는 것으로 방향을 잡았습니다. 앱에 정리된 것보다는 구글 시트나 엑셀 같은 스프레드 시트가 익숙하잖아요.

 

해당 검색 사이트의 API 사용을 위한 가입과 인증 정보를 획득하고, 구글 시트에도 접근 권한을 주었습니다. 대부분 ChatGPT 도움으로 정보를 얻고 있습니다.

 

처음 생각은 라즈베리파이 + 바코드스캐너 모듈 + 휴대용 배터리 조합으로 장치를 만들까 했는데, 파이썬으로 작성하면 어느 환경으로 넘어갈 수 있어서, 윈도우 명령 프롬프트 환경에서 우선 테스트 중입니다.

 

현재까지 구현된 흐름은 다음과 같습니다.

  1. 바코드 입력 (수기 입력 또는 바코드 리더 사용 가능)
  2. 해당 바코드 값을 Discogs, MusicBrainz, 알라딘에 조
  3. 한 군데만 조회된 경우엔 그 결과를 보여줍니다
    두 군데 이상 조회된 경우, 선택 후에 그 결과를 보여줍니다.
    없으면 없다고 나옵니다.
  4. 구글 시트에 저장 여부를 묻고 저장하거나 검색을 종료합니다.
    만약 구글 시트에 이미 존재하는 바코드면 존재한다고 나옵니다.
  5. 다시 1번으로

 

실행 예

 

다음은 실행 예입니다.

바코드를 입력하세요 (종료하려면 'exit' 입력):
⚠️ 유효한 바코드를 입력하세요.


바코드를 입력하세요 (종료하려면 'exit' 입력): 8804775046841



🔍 여러 곳에서 검색되었습니다. 원하는 데이터를 선택하세요:
[1] 알라딘: 앤썸 (Anthem) - Anthem - Ultimate Best Of Nexus Years
[2] Discogs: Anthem (4) - Ultimate Best Of Nexus Years
[3] MusicBrainz: Anthem - Ultimate Best of Nexus Years
👉 선택 (번호 입력): 2



📚 검색 결과:
🔢 바코드: 8804775046841
🎵 미디어 타입: CD, Compilation, Remastered
🎤 아티스트: Anthem (4)
📖 제목: Ultimate Best Of Nexus Years
📅 발매 연도: 2012
🏢 레이블: Evolution Music
🌍 발매 국가: South Korea
💿 미디어 장수: 2
🖼️ 커버 이미지: ttps:// i.discogs.com/j3Io7y7gt810wnHsx9-jeU3foL3_znAbScdHjaJi6fM/rs:fit/g:sm/q:90/h:600/w:600/czM6Ly9kaXNjb2dz/LWRhdGFiYXNlLWlt/YWdlcy9SLTEzNTQ2/NDI3LTE1NTYyNzU1/NTQtNzIzOC5qcGVn.jpeg
🔗 링크: ttps://www.discogs.com/Anthem-Ultimate-Best-Of-Nexus-Years/release/13546427



📂 Google Sheets에 저장할까요? [Y]/N:
✅ Google Sheets에 저장 완료: 8804775046841 - Ultimate Best Of Nexus Years
----------------------------------------


바코드를 입력하세요 (종료하려면 'exit' 입력): 8809447084794



🔍 여러 곳에서 검색되었습니다. 원하는 데이터를 선택하세요:
[1] 알라딘: 노브레인 (No Brain) - 노브레인 - 정규 7집 Brainless
[2] Discogs: No Brain (2) - Brainless

👉 선택 (번호 입력): 1


📚 검색 결과:
🔢 바코드: 8809447084794
🎵 미디어 타입: CD
🎤 아티스트: 노브레인 (No Brain)
📖 제목: 노브레인 - 정규 7집 Brainless
📅 발매 연도: 2016
🏢 레이블: 미러볼뮤직
🌍 발매 국가:
💿 미디어 장수: 1
🖼️ 커버 이미지: ttps:// image.aladin.co.kr/product/8232/53/coversum/c192634125_1.jpg
🔗 링크: ttp://www.aladin.co.kr/shop/wproduct.aspx?ItemId=82325321&partner=openAPI&start=api



📂 Google Sheets에 저장할까요? [Y]/N:
✅ Google Sheets에 저장 완료: 8809447084794 - 노브레인 - 정규 7집 Brainless
----------------------------------------


바코드를 입력하세요 (종료하려면 'exit' 입력): 4547366064810

📚 검색 결과:
🔢 바코드: 4547366064810
🎵 미디어 타입: CD, Album, DVD
🎤 아티스트: Animetal USA
📖 제목: Animetal USA
📅 발매 연도: 2012
🏢 레이블: Sony Records Int'l
🌍 발매 국가: Japan
💿 미디어 장수: 2
🖼️ 커버 이미지: ttps:/i.discogs.com/dtasotjy8LqcJNcUrvddq8Ioxrm2EQwjhkrufh70wvs/rs:fit/g:sm/q:90/h:496/w:500/czM6Ly9kaXNjb2dz/LWRhdGFiYXNlLWlt/YWdlcy9SLTEzNzIw/NzgwLTE1NTk3Mjcz/ODItNjAyMC5qcGVn.jpeg
🔗 링크: ttps:/www.discogs.com/Animetal-USA-Animetal-USA/release/13720780



📂 Google Sheets에 저장할까요? [Y]/N:
✅ Google Sheets에 저장 완료: 4547366064810 - Animetal USA
----------------------------------------

바코드를 입력하세요 (종료하려면 'exit' 입력): 825646089239


🔍 여러 곳에서 검색되었습니다. 원하는 데이터를 선택하세요:
[1] 알라딘: 아이언 메이든 (Iron Maiden) - [수입] Iron Maiden - The Book Of Souls [2CD Deluxe Edition 양장본]
[2] Discogs: Iron Maiden - The Book Of Souls
[3] MusicBrainz: Iron Maiden - The Book of Souls
👉 선택 (번호 입력): 2



📚 검색 결과:
🔢 바코드: 825646089239
🎵 미디어 타입: CD, Album, Deluxe Edition, Limited Edition, Stereo
🎤 아티스트: Iron Maiden
📖 제목: The Book Of Souls
📅 발매 연도: 2015
🏢 레이블: Parlophone
🌍 발매 국가: Europe
💿 미디어 장수: 2
🖼️ 커버 이미지: ttps://i.discogs.com/K_ml-9WKuOlbzDUrYHERPy6DHz82NTblP3ywmGW7FTw/rs:fit/g:sm/q:90/h:816/w:600/czM6Ly9kaXNjb2dz/LWRhdGFiYXNlLWlt/YWdlcy9SLTc0MTUx/NDgtMTQ0MTIwNjQy/Ni00MjYxLmpwZWc.jpeg
🔗 링크: ttps://www.discogs.com/release/7415148-Iron-Maiden-The-Book-Of-Souls



📂 Google Sheets에 저장할까요? [Y]/N:
✅ Google Sheets에 저장 완료: 825646089239 - The Book Of Souls
----------------------------------------


바코드를 입력하세요 (종료하려면 'exit' 입력): 825646089239



🔍 여러 곳에서 검색되었습니다. 원하는 데이터를 선택하세요:
[1] 알라딘: 아이언 메이든 (Iron Maiden) - [수입] Iron Maiden - The Book Of Souls [2CD Deluxe Edition 양장본]
[2] Discogs: Iron Maiden - The Book Of Souls
[3] MusicBrainz: Iron Maiden - The Book of Souls
👉 선택 (번호 입력): 2



📚 검색 결과:
🔢 바코드: 825646089239
🎵 미디어 타입: CD, Album, Deluxe Edition, Limited Edition, Stereo
🎤 아티스트: Iron Maiden
📖 제목: The Book Of Souls
📅 발매 연도: 2015
🏢 레이블: Parlophone
🌍 발매 국가: Europe
💿 미디어 장수: 2
🖼️ 커버 이미지: ttps://i.discogs.com/K_ml-9WKuOlbzDUrYHERPy6DHz82NTblP3ywmGW7FTw/rs:fit/g:sm/q:90/h:816/w:600/czM6Ly9kaXNjb2dz/LWRhdGFiYXNlLWlt/YWdlcy9SLTc0MTUx/NDgtMTQ0MTIwNjQy/Ni00MjYxLmpwZWc.jpeg
🔗 링크: ttps://www.discogs.com/release/7415148-Iron-Maiden-The-Book-Of-Souls



📂 Google Sheets에 저장할까요? [Y]/N:
⚠️ 이미 등록된 바코드: 825646089239 - The Book Of Souls
----------------------------------------


바코드를 입력하세요 (종료하려면 'exit' 입력): 4988007291811



🔍 여러 곳에서 검색되었습니다. 원하는 데이터를 선택하세요:
[1] Discogs: Band-Maid - World Domination Tour 【進化】at Line Cube Shibuya(渋谷公会堂)
[2] MusicBrainz: BAND‐MAID - BAND‐MAID WORLD DOMINATION TOUR【進化】at LINE CUBE SHIBUYA(渋谷公会堂)



👉 선택 (번호 입력): 1
📚 검색 결과:
🔢 바코드: 4988007291811
🎵 미디어 타입: Blu-ray
🎤 아티스트: Band-Maid
📖 제목: World Domination Tour 【進化】at Line Cube Shibuya(渋谷公会堂)
📅 발매 연도: 2020
🏢 레이블: Revolver Records
🌍 발매 국가: Japan
💿 미디어 장수: 1
🖼️ 커버 이미지: ttps://st.discogs.com/fd422a113c8de5355dca2eac368778316871787e/images/spacer.gif
🔗 링크: ttps://www.discogs.com/release/19072303-Band-Maid-World-Domination-Tour-%E9%80%B2%E5%8C%96at-Line-Cube-Shibuya%E6%B8%8B%E8%B0%B7%E5%85%AC%E4%BC%9A%E5%A0%82



📂 Google Sheets에 저장할까요? [Y]/N:
✅ Google Sheets에 저장 완료: 4988007291811 - World Domination Tour 【進化】at Line Cube Shibuya(渋谷公会堂)
----------------------------------------


바코드를 입력하세요 (종료하려면 'exit' 입력): exit
프로그램을 종료합니다.

 

이렇게 해서 구글시트에 저장된 내용은 다음과 같습니다. 클릭하면 좀 크게 보일 겁니다.

 
이렇게 스프레드 시트로 자동으로 정리가 됩니다. 예스24 정보는 타이틀의 출시 국가 정보는 제공하지 않아 공백입니다. 이런 건 시트에서 수동으로 입력하면 되니 패스~
Discogs에서 조회되는 포맷에 기타 정보가 많아서, 매체 정보와 부가 정보를 분리하는 것도 고려 중입니다.
음악 타이틀(CD, DVD, 블루레이)는 어느 정도 될 것 같은데, 영화 블루레이는 이런 정보를 갖고 올 수 있는 곳이 많지 않네요. 알라딘이 어느 정도 되긴 하는 것 같은데 몇 개 샘플로 해봤는데 안 되는 타이틀이 상당히 나옵니다.
해외 타이틀이면 아마존이 최강인데, 아마존에 이런 정보를 조회할 수 있는 API는 아마존에 입점한 판매자에게만 권한이 주어지네요. 그냥 써보려고 가입했더니 '일정 기간동안 3건 이상 팔아야 이 계정이 유지될 거다.' 뭐, 이럽니다. 
얄팍한 지식이긴 한데, ChatGPT가 있으니 해보고 싶었던 걸 만들어 보네요. 물론 하나 수정시켰더니, 다른 코드 막 바꿔서 뒤죽박죽 만들어 놓는 일도 허다합니다만 이제 대응하는 법도 조금씩 익숙해지고, 그래도 직접 일일이 입력하는 수고는 훨씬 덜고 있습니다.
 
지금 추가적으로 해보고 있는 것과 해볼까 하는 것은 다음과 같습니다.
  • 개인 PC나 여유 시스템에 구성된 간단한 웹서버에 스마트폰 웹브라우저로 접속해서 스마트폰 카메라로 바코드 스캔해서 사용하기
    >> 생각보다 스마트폰으로 바코드 스캔이 원활하지 않네요. 회사에 있는 싸구려 바코드 스캐너가 훨씬 인식 잘하고 빠릅니다. ㅎㅎ
  • 위의 3개 사이트에서 조회되지 않는 바코드는 내용을 수기로 입력하고 구글 시트에 저장하기
  • "라즈베리파이 + 바코드 스캐너 모듈 + 디스플레이 + 리튬 배터리 + USB 충전모듈 + 3D 프린팅" 조합으로 별도의 장치 만들기

 

일단 CD와 음악 타이틀 위주가 될 것 같습니다만, 기능 조금 더 정리하고 나면, 코드 공개하고 매뉴얼도 만들어서 여러분들도 쓸 수 있게 해보려 합니다.

 

혹시 뭔가 관련해서 아이디어나 정보 있으시면 말씀해주세요.

감사합니다~

반응형