Yetangitu / Spodcast

Spodcast is a caching Spotify podcast to RSS proxy. Using Spodcast you can follow Spotify-hosted netcasts/podcasts using any player which supports RSS, thus enabling the use of older hardware which is not compatible with the Spotify (web) app.
GNU General Public License v3.0
353 stars 14 forks source link

Can't add feeds #20

Closed ghost closed 1 year ago

ghost commented 1 year ago

I've set up Spodcast following your tutorial and I think I've set all permissions correctly. www-data can run spodcast.

When adding a url via the web interface, the spinner just disappears after a while and the page stays empty.

I've set "LOG_LEVEL":"DEBUG" and ran the following command as user www-data:

spodcast -c /mnt/audio/spodcast/spodcast.json --max-episodes 1 https://open.spotify.com/show/1OLcQdw2PFDPG1jo3s0wbp

Spodcast seems to find the podcast episode but skips it for some reason. Any help or direction is greatly appreciated! This is the console output:

www-data@vmd97416:/mnt/audio/spodcast$ spodcast -c /mnt/audio/spodcast/spodcast.json --max-episodes 1 https://open.spotify.com/show/1OLcQdw2PFDPG1jo3s0wbp DEBUG:spodcast.spodcast:args: Namespace(config_location='/mnt/audio/spodcast/spodcast.json', prepare_feed=False, urls=['https://open.spotify.com/show/1OLcQdw2PFDPG1jo3s0wbp'], login=None, root_path=None, skip_existing=None, retry=None, max_episodes='1', chunk_size=None, download_real_time=None, language=None, credentials_location=None, rss_feed=None, transcode=None, log_level=None, func=<function client at 0x7fce4ac41c10>) DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): apresolve.spotify.com:443 DEBUG:urllib3.connectionpool:https://apresolve.spotify.com:443 "GET /?type=accesspoint HTTP/1.1" 200 None INFO:Librespot:Session:Created new session! device_id: d6f07bbe25096c88a475cea32cec6fb71ec3376c, ap: ap-gae2.spotify.com:443 INFO:Librespot:Session:Connection successfully! INFO:Librespot:Session:Session.Receiver started DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): apresolve.spotify.com:443 DEBUG:urllib3.connectionpool:https://apresolve.spotify.com:443 "GET /?type=spclient HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): apresolve.spotify.com:443 INFO:Librespot:Session:Skipping 02 INFO:Librespot:Session:Received license_version: 0 INFO:Librespot:Session:Received country_code: DE DEBUG:Librespot:Session:Parsed product info: {'type': 'open', 'ab-ad-player-targeting': '1', 'ab-ad-requester': '1', 'ab-android-push-notifications': '1', 'ab-browse-music-tuesday': '1', 'ab-collection-bookmark-model': '1', 'ab-collection-followed-artists-only': '1', 'ab-collection-hide-unavailable-albums': '0', 'ab-collection-offline-mode': '0', 'ab-collection-union': '1', 'ab-desktop-hide-follow': '0', 'ab-desktop-playlist-annotation-edit': '1', 'ab-mobile-discover': '0', 'ab-mobile-running-onlymanualmode': 'only-manual', 'ab-mobile-running-tempo-detection': 'Control', 'ab-mobile-social-feed': '1', 'ab-mobile-startpage': '0', 'ab-moments-experience': '0', 'ab-new-share-flow': '0', 'ab-play-history': '0', 'ab-playlist-extender': '5', 'ab-sugarpills-sanity-check': '0', 'ab-test-group': '779', 'ab-watch-now': '0', 'ab_recently_played_feature_time_filter_threshold': 'com.spotify.gaia=30,driving-mode=120,spotify%3Ainternal%3Astartpage=30', 'ad-catalogues': 'spotify', 'ad-formats-preroll-video': '0', 'ad-formats-video-takeover': '1', 'ad-persist-reward-time': '0', 'ad-session-persistence': '1', 'ad-use-adlogic': 'stream', 'ads': '1', 'allow-override-internal-prefs': '0', 'ap-resolve-pods': '0', 'app-developer': '0', 'arsenal_country': '1', 'audio-preview-url-template': 'https://p.scdn.co/mp3-preview/{id}', 'backend-advised-bitrate': '1', 'browse-overview-enabled': '1', 'buffering-strategy': '0', 'buffering-strategy-parameters': '0.8:0.2:0.0:0.0:0.0:0.0:1.0:10:10:2000:10000:10485760', 'capper-profile': None, 'capping-bar-threshold': '3601', 'catalogue': 'free', 'collection': '1', 'created_by_partner': None, 'enable-annotations': '2', 'enable-annotations-read': '0', 'enable-autostart': '1', 'enable-crossfade': '1', 'enable-gapless': '1', 'expiry': '1', 'explicit-content': '1', 'fb-grant-permission-local-render': '0', 'fb-info-confirmation': 'control', 'financial-product': 'pr:open,tc:0', 'head-file-caching': '1', 'head-files': '1', 'head-files-url': 'https://heads-fa.scdn.co/head/{file_id}', 'high-bitrate': '0', 'image-url': 'https://i.scdn.co/image/{file_id}', 'incognito_mode_timeout': '21600', 'india-experience': '0', 'instant-search': '0', 'instant-search-expand-sidebar': '0', 'is_email_verified': '1', 'key-caching-max-count': '10000', 'key-caching-max-offline-seconds': '1800', 'key-memory-cache-mode': '1:15,300', 'lastfm-session': None, 'libspotify': '0', 'license-acceptance-grace-days': '30', 'license-agreements': None, 'local-files-import': '0', 'metadata-link-lookup-modes': '0', 'mobile': '0', 'mobile-browse': '0', 'mobile-login': '0', 'mobile-payment': '0', 'name': 'Spotify Free', 'network-operator-premium-activation': '1', 'nft-disabled': '1', 'npt-disabled': '2', 'offline': '0', 'on-demand': '1', 'pause-after': '18000', 'payments-locked-state': '0', 'player-license': 'on-demand', 'playlist-annotations-markup': '0', 'playlist-folders': '1', 'preferred-locale': 'en', 'prefetch-keys': '1', 'prefetch-strategy': '0', 'prefetch-window-max': '2', 'profile-image-upload': '1', 'publish-activity': '0', 'publish-playlist': '1', 'radio': '1', 'remote-control': '6', 'send-email': '0', 'shows-collection': '1', 'shows-collection-jam': '1', 'shuffle': '0', 'shuffle-algorithm': '1', 'sidebar-navigation-enabled': '0', 'storage-size-config': '10240,90,500,3', 'streaming': '1', 'streaming-rules': None, 'track-cap': '0', 'ugc-abuse-report': '1', 'ugc-abuse-report-url': 'https://support.spotify.com/abuse/?uri={uri}', 'use-fb-publish-backend': '2', 'use-pl3': '0', 'use-playlist-app': '0', 'use-playlist-uris': '0', 'user-profile-show-invitation-codes': '0', 'video-cdn-sampling': '1', 'video-device-blacklisted': '0', 'video-initial-bitrate': '200000', 'video-keyframe-url': 'http://keyframes-fa.cdn.spotify.com/keyframes/v1/sources/{source_id}/keyframe/heights/{height}/timestamps/{timestamp_ms}.jpg', 'video-manifest-url': 'https://spclient.wg.spotify.com/manifests/v6/{type}/sources/{source_id}/options/supports_drm', 'video-wifi-initial-bitrate': '800000', 'wanted-licenses': None, 'widevine-license-url': 'https://spclient.wg.spotify.com/widevine-license/v1/video/license'} INFO:Librespot:Session:Skipping 1f INFO:Librespot:Session:Skipping 69 DEBUG:urllib3.connectionpool:https://apresolve.spotify.com:443 "GET /?type=dealer HTTP/1.1" 200 None DEBUG:Librespot:TokenProvider:Token expired or not suitable, requesting again. scopes: ['playlist-read'], old_token: None DEBUG:Librespot:MercuryClient:Send Mercury request, seq: 0, uri: hm://keymaster/token/authenticated?scope=playlist-read&client_id=65b708073fc0480ea92a077233ca87bd&device_id=d6f07bbe25096c88a475cea32cec6fb71ec3376c, method: GET DEBUG:Librespot:MercuryClient:Handling packet, cmd: 0xb5, seq: 8560867902608113664, flags: b'\x01', parts: 1 DEBUG:Librespot:MercuryClient:Couldn't dispatch Mercury event seq: 8560867902608113664, uri: hm://pusher/v1/connections/ZDZmMDdiYmUyNTA5NmM4OGE0NzVjZWEzMmNlYzZmYjcxZWMzMzc2YytBUCt0Y3A6Ly9nYWUyLWFjY2Vzc3BvaW50LWEtNnZueC5nYWUyLnNwb3RpZnkubmV0OjUwMDkrNTVEMjlGMUI5QjkwOTBCN0YxOTNBMTREMTBDQjYxMTlCMjRDRUNCOThERDIyQTVEN0M4MUEzMkE4MUI5QjJCOA%3D%3D, code: 200, payload: b'' DEBUG:Librespot:Session:Received 0x10: 28c3d872056c29887aa89b2bb07525c155531adf DEBUG:Librespot:MercuryClient:Handling packet, cmd: 0xb2, seq: 0, flags: b'\x01', parts: 2 DEBUG:Librespot:TokenProvider:Updated token successfully! scopes: ['playlist-read'], new_token: <librespot.core.TokenProvider.StoredToken object at 0x7fce46ea1a00> INFO:Librespot:Session:Authenticated as 315q64kqplnebfldqygmmqpqelye! DEBUG:spodcast.app:episode_id_str None. show_id_str 1OLcQdw2PFDPG1jo3s0wbp DEBUG:spodcast.app:show_id: <librespot.metadata.ShowId object at 0x7fce46e635b0> INFO:Librespot:Session:Skipping unknown command cmd: 0x75, payload: b'\x00\x00\x00' DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): clienttoken.spotify.com:443 DEBUG:urllib3.connectionpool:https://clienttoken.spotify.com:443 "POST /v1/clienttoken HTTP/1.1" 200 None DEBUG:Librespot:ApiClient:Updated client token: AABawkvhKpjRCTeXYN8J9Fm7whJBiyYqFevKcp/uBKjE8xEJD56Wh9uH5hjEQw3+p8Qw1wE395/TCXem8+Puv960Ckf8VQ3b/Y1ziwWY6pVBa+3Pqx3/7eHIGcGd6BBhDhKzWuT2bWBdxCbBXWMglyh6BuxeQO84T+B7foTQ3NTUTMLpdmz7GyflIfgRjOIa/HwXQWLIB1HxQ3nreDq5xunuKXj9kUCwy7r5Oc5j5dFPDCeV DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): guc3-spclient.spotify.com:443 DEBUG:urllib3.connectionpool:https://guc3-spclient.spotify.com:443 "GET /metadata/4/show/3bc200e4655841529d8a7a3d2d027e23 HTTP/1.1" 200 15822 DEBUG:spodcast.app:episode_id: e1a3290cae685f4ca143a3afb8fed29e INFO:spodcast.podcast:Fetching episode information... DEBUG:urllib3.connectionpool:https://guc3-spclient.spotify.com:443 "GET /metadata/4/episode/e1a3290cae685f4ca143a3afb8fed29e HTTP/1.1" 200 796 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): traffic.megaphone.fm:443 DEBUG:urllib3.connectionpool:https://traffic.megaphone.fm:443 "GET /GLT9899421262.mp3?updated=1661274798 HTTP/1.1" 302 102 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): dcs.megaphone.fm:443 DEBUG:urllib3.connectionpool:https://dcs.megaphone.fm:443 "GET /GLT9899421262.mp3?key=20c38c11dee1691c0afed7c44f8d5525 HTTP/1.1" 200 69670934 INFO:spodcast.podcast:Skipped Fest & Flauschig: #BOOMERCRINGE 34 INFO:spodcast.podcast:Fetching show information... DEBUG:urllib3.connectionpool:https://guc3-spclient.spotify.com:443 "GET /metadata/4/show/3bc200e4655841529d8a7a3d2d027e23 HTTP/1.1" 200 15822

ghost commented 1 year ago

I've switched from Debian 11 to Ubuntu 22.04. Now I can still NOT add podcasts via web interface, however adding them via CLI does work. I will close this issue for now and maybe open a new one if I can't fix the web interface issue.