이것은 Overcast에서 청취한 모든 팟캐스트의 오디오 파일을 다운로드할 수 있는 스크립트입니다.
저는 팟캐스트를 많이 듣고, Overcast를 사용합니다. 가끔 오래 전에 들었던 팟캐스트를 듣고 싶지만 링크가 썩고, 웹사이트가 깨지고, 에피소드가 오프라인이 되는 경우가 있습니다. 이 스크립트를 사용하면 내가 들었던 모든 에피소드의 오디오 파일을 다운로드할 수 있으므로 팟캐스트 에피소드의 로컬 아카이브가 있습니다.

팟캐스트는 레코드판으로 들으면 사운드가 더 풍부해집니다. 이미지 출처: 웰컴 컬렉션. CC BY.
이것은 제가 한동안 원했던 것입니다(제가 좋아했던 적어도 두 개의 팟캐스트가 웹에서 완전히 사라졌습니다). 그러나 어떻게 해야 할지 확신할 수 없었습니다. ATP 에피소드 353의 한 부분에서 Marco는 여러분이 들어본 모든 에피소드 목록이 포함된 내보내기에 대해 언급했습니다.
에피소드 진행 상황을 저장하는 데이터베이스 테이블에 Overcast가 저장하는 내용이 무엇인지 말씀드릴 수 있습니다. 이는 제 가장 큰 데이터베이스 테이블입니다. 상호작용한 각 에피소드에 대해 현재 타임스탬프와 완료 여부를 저장합니다. […]
웹사이트의 계정 섹션으로 이동하면 제가 구현한 사용자 정의 확장 형식인 OPML을 내보낼 수 있으므로 실제로 모든 데이터를 내보낼 수 있습니다. [...] 당신이 완료했거나 어떤 방식으로든 Overcast에서 플레이한 에피소드 목록을 알려드릴 수 있습니다.
나는 파헤쳐 보았고 그것이 정확히 내가 원했던 것이었습니다. 그리고 얼마 지나지 않아 그것이 참조하는 모든 MP3를 다운로드하는 스크립트를 얻었습니다.
당신은 다음이 필요합니다
이메일과 비밀번호가 있는 Overcast 계정. Overcast iOS 앱에서 이를 생성할 수 있습니다. 이전에 이 작업을 수행한 적이 없거나 이메일/비밀번호를 잊어버린 경우 해당 작업에 대한 지침을 읽어보세요.
작동 중인 Python 3 설치. 이 스크립트는 Python 3.6 이상에서만 작동합니다.
단계:
흐린 OPML 파일을 받으세요.
이메일 주소와 비밀번호를 사용하여 https://overcast.fm/login에서 Overcast 웹사이트에 로그인하세요.
로그인한 후 https://overcast.fm/account로 이동하세요. "데이터 내보내기"에서 "모든 데이터"를 클릭합니다. 그러면 지금까지 재생한 모든 팟캐스트 에피소드 목록이 포함된 OPML 파일이 다운로드됩니다.
Python 스크립트를 다운로드합니다.
download_overcast_podcasts.py 스크립트를 다운로드하여 디스크 어딘가에 저장하세요.
OPML 파일 경로를 첫 번째 인수로 전달하여 스크립트를 실행합니다. 예를 들어 OPML 파일이 ~/Downloads/overcast.opml.xml 에 있으면 다음을 실행합니다.
$ 파이썬 download_overcast_podcasts.py ~/Downloads/overcast.opml.xml
그러면 audiofiles 라는 폴더에 오디오 파일이 다운로드되기 시작합니다. 다른 곳에 저장하려면 --download_dir 플래그를 전달하세요. 예를 들어 ~/Documents/podcasts 에 파일을 저장하려면 다음을 실행합니다.
$ python download_overcast_podcasts.py ~/Downloads/overcast.opml.xml --out_dir ~/Documents/podcasts
초기 다운로드는 청취한 팟캐스트 수에 따라 매우 느리며 많은 디스크 공간을 사용합니다. (이 글을 쓰는 시점에는 내보낸 에피소드가 최대 1200개로 61GB를 차지합니다.) 후속 실행 시 스크립트는 이전에 저장하지 않은 파일만 다운로드해야 하므로 속도가 훨씬 빨라집니다.
MIT.