[GH-ISSUE #126] [Bug Report] Failed to get content stream #110

Closed
opened 2026-02-27 04:57:35 +03:00 by kerem · 1 comment
Owner

Originally created by @FISSI0N on GitHub (Nov 25, 2025).
Original GitHub issue: https://github.com/Googolplexed0/zotify/issues/126

Originally assigned to: @Googolplexed0 on GitHub.

Zotify Version
v0.10.27

Bug Description
Using the efficient-api tree as the latest version of zotify, after getting the same error message earlier on the main one, downloads don't start. I tried different --bulk-wait-times but it didn't make a difference.

Without the --debug flag, this is what was printed in the console:

`C:\Users***>zotify --username *** --output "{playlist}{album}___{track_number} {song_name}---{track_id}" --song-archive-location G:\zotify\ --skip-previously-downloaded=True --root-path G:\zotify --md-allgenres=True --download-lyrics=False --download-format mp3 --download-quality high --retry-attempts 10 --print-skips=True --print-download-progress=True --print-errors=True --print-downloads=True --bulk-wait-time 30 https://open.spotify.com/intl-de/track/79lc69ZXfL4WmJIzVSDmWT

    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
                                                                                                                    
    [∙∙∙] Fetching track information...                                                                             
    [●∙∙] Fetching track information...                                                                             
    [∙●∙] Fetching track information...                                                                             
    [∙∙●] Fetching track information...                                                                             
                                                                                                                    
    [∙∙∙] Parsing track information...                                                                              
                                                                                                                    
    [∙∙∙] Fetching bulk parent album information...                                                                 
    [●∙∙] Fetching bulk parent album information...                                                                 
    [∙●∙] Fetching bulk parent album information...                                                                 
                                                                                                                    
    [∙∙∙] Preparing Download...                                                                                     

ERROR: FAILED TO FETCH AUDIO KEY

MAY BE CAUSED BY RATE LIMITS - CONSIDER INCREASING BULK_WAIT_TIME

GID: 0a9a2201bc9841bfaafdaa7f630e1543 - File_ID: fb970152823a5b9068341dbe36fc696d4cb7ee7c

ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM

Track_ID: 0k0mscf6Wz9O9rIS3S42MX

PAUSED: WAITING FOR 30 SECONDS BETWEEN DOWNLOADS

    [∙∙∙] Preparing Download...                                                                                     

ERROR: FAILED TO FETCH AUDIO KEY

MAY BE CAUSED BY RATE LIMITS - CONSIDER INCREASING BULK_WAIT_TIME

GID: 60f4edfbe96a4fc2ba5b69d5a2f06daf - File_ID: 440416a94ff76b9e241389f8f6fb218d9571bc2b

ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM

Track_ID: 2WXcbvwgAa3xrm7IfgeMjB

PAUSED: WAITING FOR 30 SECONDS BETWEEN DOWNLOADS

USER CANCELED DOWNLOADS EARLY

ATTEMPTING TO CLEAN UP

ERROR: CLEAN UP COMPLETE

LOGGING ERROR AND TRACEBACK ### `

Then I repeated it using the --debug flag and recieved the following:

`C:\Users***>zotify --username *** --output "{playlist}{album}___{track_number} {song_name}---{track_id}" --song-archive-location G:\zotify\ --skip-previously-downloaded=True --root-path G:\zotify --md-allgenres=True --download-lyrics=False --download-format mp3 --download-quality high --retry-attempts 10 --print-skips=True --print-download-progress=True --print-errors=True --print-downloads=True --bulk-wait-time 30 https://open.spotify.com/intl-de/track/79lc69ZXfL4WmJIzVSDmWT --debug

DEBUG

config_DEBUG.json saved to C:\Users***\AppData\Roaming\Zotify

zotify_DEBUG_2025-11-25_11-38-23.log logging to G:\zotify

    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [●∙∙] Logging in...                                                                                             
    [∙●∙] Logging in...                                                                                             
    [∙∙●] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             
    [∙∙∙] Logging in...                                                                                             

DEBUG
Session Initialized Successfully
User Subscription Type: FREE
Requested Parsed as 1 URL

    [∙∙∙] Fetching track information...                                                                             
    [●∙∙] Fetching track information...                                                                             
    [∙●∙] Fetching track information...                                                                             
    [∙∙●] Fetching track information...                                                                             
                                                                                                                    
    [∙∙∙] Parsing track information...                                                                              
                                                                                                                    
    [∙∙∙] Fetching bulk parent album information...                                                                 
    [●∙∙] Fetching bulk parent album information...                                                                 
    [∙●∙] Fetching bulk parent album information...                                                                 

DEBUG
Total API Calls: 2

Traceback (most recent call last):
File "", line 198, in run_module_as_main
File "", line 88, in run_code
File "C:\Python 3\Scripts\zotify.exe_main
.py", line 6, in
File "C:\Python 3\Lib\site-packages\zotify_main
.py", line 140, in main
args.func(args, modes)
File "C:\Python 3\Lib\site-packages\zotify\app.py", line 78, in client
perform_query(args)
File "C:\Python 3\Lib\site-packages\zotify\app.py", line 69, in perform_query
raise e
File "C:\Python 3\Lib\site-packages\zotify\app.py", line 44, in perform_query
Query(Zotify.DATETIME_LAUNCH).request(urls).execute()
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1696, in execute
self.download()
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1632, in download
skipped = {d for d in self.downloadables if d.check_skippable()}
^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1316, in check_skippable
super().check_skippable()
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1173, in check_skippable
self._skippable = all([child.check_skippable() for child in self.extChildren()])
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 890, in check_skippable
super().check_skippable()
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 377, in check_skippable
self._in_global_archive = self.id in get_archived_item_ids()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 322, in get_archived_item_ids
entries = get_archived_entries(dir_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 314, in get_archived_entries
upgrade_legacy_archive(entries, archive_path)
File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 278, in upgrade_legacy_archive
reliable_tags, unreliable_tags = test_track.get_audio_tags()
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 808, in get_audio_tags
utag_vals[utag] = fetch_unreliable_tag(taglabel)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python 3\Lib\site-packages\zotify\api.py", line 792, in fetch_unreliable_tag
val = val.text
^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'text'`

This is the content of the logfile:

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: 1434f3652f2bd47802613b19a1799221c285eef5, ap: ap-gew4.spotify.com:80 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 INFO:Librespot:Session:Skipping 02 INFO:Librespot:Session:Received license_version: 0 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): apresolve.spotify.com:443 INFO:Librespot:Session:Received country_code: DE DEBUG:Librespot:Session:Parsed product info: {'type': 'free', 'ab-ad-player-targeting': '1', 'ab-watch-now': '0', 'ab_recently_played_feature_time_filter_threshold': 'com.spotify.gaia=30,driving-mode=120,spotify%3Ainternal%3Astartpage=30', 'ad-formats-preroll-video': '0', 'ad-session-persistence': '1', 'ads': '1', 'app-developer': '0', 'arsenal_country': '1', 'audio-preview-url-template': 'https://p.scdn.co/mp3-preview/{id}', 'audio-quality': '0', 'audiobook-onboarding-completed': '0', 'autoplay': '1', 'capping-bar-threshold': '3601', 'catalogue': 'free', 'client-deprecated': '1', 'collection': '1', 'created_by_partner': None, 'employee-free-opt-in': '0', 'enable-annotations': '2', 'enable-annotations-read': '0', 'enable-crossfade': '1', 'explicit-content': '1', 'filter-explicit-content': '0', 'financial-product': 'pr:free,tc:0', 'head-file-caching': '1', 'head-files': '1', 'head-files-url': 'https://heads-fa-tls13.spotifycdn.com/head/{file_id}', 'high-bitrate': '0', 'image-url': 'https://i.scdn.co/image/{file_id}', 'incognito_mode_timeout': '21600', 'is_email_verified': '1', 'key-caching-auto-offline': '0', 'key-caching-max-count': '10000', 'key-caching-max-offline-seconds': '1800', 'key-memory-cache-mode': '1:15,300', 'libspotify': '0', 'license-agreements': None, 'metadata-link-lookup-modes': '0', 'mobile': '0', 'name': 'Spotify Free', 'nft-disabled': '1', 'offline': '0', 'on-demand': '1', 'on-demand-trial': 'expired', 'on-demand-trial-in-progress': '0', 'payments-locked-state': '0', 'player-license': 'on-demand', 'player-license-v2': 'on-demand', 'playlist-annotations-markup': '0', 'preferred-locale': 'en', 'prefetch-keys': '1', 'prefetch-strategy': '18', 'prefetch-window-max': '2', 'publish-activity': '0', 'publish-playlist': '1', 'radio': '1', 'rating-access': '1', 'remote-control': '6', 'restrict-playlist-collaboration': '0', 'send-email': '0', 'shows-collection': '1', 'shows-collection-jam': '1', 'shuffle': '0', 'shuffle-algorithm': 'FRESH', 'sidebar-navigation-enabled': '0', 'storage-size-config': '10240,90,500,3', 'streaming': '1', 'streaming-rules': None, 'ugc-abuse-report': '1', 'ugc-abuse-report-url': 'https://support.spotify.com/abuse/?uri={uri}', 'video-cdn-sampling': '100', 'video-device-blacklisted': '0', 'video-manifest-url': 'https://spclient.wg.spotify.com/manifests/v6/{type}/sources/{source_id}/options/supports_drm', 'widevine-license-url': 'https://spclient.wg.spotify.com/widevine-license/v1/video/license'} INFO:Librespot:Session:Skipping 1f INFO:Librespot:Session:Skipping 69 DEBUG:Librespot:MercuryClient:Handling packet, cmd: 0xb5, seq: -8079893138107269120, flags: b'\x01', parts: 1 DEBUG:Librespot:MercuryClient:Couldn't dispatch Mercury event seq: -8079893138107269120, uri: hm://pusher/v1/connections/MTQzNGYzNjUyZjJiZDQ3ODAyNjEzYjE5YTE3OTkyMjFjMjg1ZWVmNStBUCt0Y3A6Ly8wYWIxNTFlZC5pcC5nZXc0LnNwb3RpZnkubmV0OjUwMDYrMjcyRTgxRjQ1MjE3OTRFM0VCMjc4NjNCQjhFREZGNUI5M0I1OEEzQjUyODk1QjVDRUY3ODdCQTI2NEYzREI0Ng%3D%3D, code: 200, payload: b'' DEBUG:Librespot:Session:Received 0x10: fa37779a9d1a5dec3a9e515925a73f58a51c3044 DEBUG:urllib3.connectionpool:https://apresolve.spotify.com:443 "GET /?type=dealer HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): login5.spotify.com:443 DEBUG:urllib3.connectionpool:https://login5.spotify.com:443 "POST /v3/login HTTP/1.1" 200 None INFO:Librespot:TokenProvider:Login5 authentication successful, got access token DEBUG:Librespot:TokenProvider:Using Login5 access token for scopes: ['playlist-read'] INFO:Librespot:Session:Authenticated as 31hrn2i5wvhx756pktrzirk5jooy! INFO:Librespot:Session:Skipping unknown command cmd: 0x75, payload: b'\x00\x00\x01' DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): login5.spotify.com:443 DEBUG:urllib3.connectionpool:https://login5.spotify.com:443 "POST /v3/login HTTP/1.1" 200 None INFO:Librespot:TokenProvider:Login5 authentication successful, got access token DEBUG:Librespot:TokenProvider:Using Login5 access token for scopes: [('user-read-email', 'playlist-read-private', 'user-library-read', 'user-follow-read')] DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.spotify.com:443 DEBUG:urllib3.connectionpool:https://api.spotify.com:443 "GET /v1/tracks/79lc69ZXfL4WmJIzVSDmWT?market=from_token HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.spotify.com:443 DEBUG:urllib3.connectionpool:https://api.spotify.com:443 "GET /v1/albums?market=from_token&ids=6vxv7hGXgjaUmMt9UyXFpG HTTP/1.1" 200 None

And this is config_DEBUG.json:

{ "DEBUG": "True", "ROOT_PATH": "", "SAVE_CREDENTIALS": "True", "CREDENTIALS_LOCATION": "", "OUTPUT": "", "OUTPUT_SINGLE": "{artist}/{album}/{artist}_{song_name}", "OUTPUT_ALBUM": "{artist}/{album}/{album_num}_{artist}_{song_name}", "OUTPUT_PLAYLIST_EXT": "{playlist}/{playlist_num}_{artist}_{song_name}", "OUTPUT_LIKED_SONGS": "Liked Songs/{artist}_{song_name}", "ROOT_PODCAST_PATH": "", "SPLIT_ALBUM_DISCS": "False", "MAX_FILENAME_LENGTH": "0", "OPTIMIZED_DOWNLOADING": "True", "BULK_WAIT_TIME": "1", "DOWNLOAD_REAL_TIME": "False", "TEMP_DOWNLOAD_DIR": "", "DOWNLOAD_PARENT_ALBUM": "True", "NO_COMPILATION_ALBUMS": "False", "REGEX_ENABLED": "False", "REGEX_TRACK_SKIP": "", "REGEX_EPISODE_SKIP": "", "REGEX_ALBUM_SKIP": "", "DOWNLOAD_FORMAT": "ogg", "DOWNLOAD_QUALITY": "auto", "TRANSCODE_BITRATE": "auto", "CUSTOM_FFMEPG_ARGS": "", "SONG_ARCHIVE_LOCATION": "", "DISABLE_SONG_ARCHIVE": "False", "DISABLE_DIRECTORY_ARCHIVES": "False", "SKIP_EXISTING": "True", "SKIP_PREVIOUSLY_DOWNLOADED": "False", "EXPORT_M3U8": "False", "M3U8_LOCATION": "", "M3U8_REL_PATHS": "True", "LIKED_SONGS_ARCHIVE_M3U8": "True", "DOWNLOAD_LYRICS": "True", "LYRICS_LOCATION": "", "LYRICS_FILENAME": "{artist}_{song_name}", "ALWAYS_CHECK_LYRICS": "False", "LYRICS_MD_HEADER": "False", "LANGUAGE": "en", "STRICT_LIBRARY_VERIFY": "True", "MD_DISC_TRACK_TOTALS": "True", "MD_SAVE_GENRES": "False", "MD_ALLGENRES": "True", "MD_GENREDELIMITER": ",", "MD_ARTISTDELIMITER": ", ", "MD_SAVE_LYRICS": "True", "ALBUM_ART_JPG_FILE": "False", "SEARCH_QUERY_SIZE": "10", "RETRY_ATTEMPTS": "10", "CHUNK_SIZE": "20000", "REDIRECT_ADDRESS": "127.0.0.1", "PRINT_SPLASH": "False", "PRINT_PROGRESS_INFO": "True", "PRINT_SKIPS": "True", "PRINT_DOWNLOADS": "True", "PRINT_DOWNLOAD_PROGRESS": "True", "PRINT_URL_PROGRESS": "True", "PRINT_ALBUM_PROGRESS": "True", "PRINT_ARTIST_PROGRESS": "True", "PRINT_PLAYLIST_PROGRESS": "True", "PRINT_WARNINGS": "True", "PRINT_ERRORS": "True", "PRINT_API_ERRORS": "True", "STANDARD_INTERFACE": "False", "FFMPEG_LOG_LEVEL": "error" }

I also found a couple of other logfiles from previous commands which I cannot reference anymore, which only contained repeating lines of "CRITICAL:Librespot:AudioKeyManager:Audio key error, code: 1" (this one was named zotify_2025-11-25_11-37-24.log)

Edit: sorry for the messy layout, the code brackets don't seem too work like I want them too

Originally created by @FISSI0N on GitHub (Nov 25, 2025). Original GitHub issue: https://github.com/Googolplexed0/zotify/issues/126 Originally assigned to: @Googolplexed0 on GitHub. **Zotify Version** v0.10.27 **Bug Description** Using the efficient-api tree as the latest version of zotify, after getting the same error message earlier on the main one, downloads don't start. I tried different --bulk-wait-times but it didn't make a difference. Without the --debug flag, this is what was printed in the console: `C:\Users\***>zotify --username *** --output "{playlist}{album}___{track_number} {song_name}---{track_id}" --song-archive-location G:\zotify\ --skip-previously-downloaded=True --root-path G:\zotify --md-allgenres=True --download-lyrics=False --download-format mp3 --download-quality high --retry-attempts 10 --print-skips=True --print-download-progress=True --print-errors=True --print-downloads=True --bulk-wait-time 30 https://open.spotify.com/intl-de/track/79lc69ZXfL4WmJIzVSDmWT [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... [●∙∙] Logging in... [∙∙∙] Fetching track information... [●∙∙] Fetching track information... [∙●∙] Fetching track information... [∙∙●] Fetching track information... [∙∙∙] Parsing track information... [∙∙∙] Fetching bulk parent album information... [●∙∙] Fetching bulk parent album information... [∙●∙] Fetching bulk parent album information... [∙∙∙] Preparing Download... ### ERROR: FAILED TO FETCH AUDIO KEY ### ### MAY BE CAUSED BY RATE LIMITS - CONSIDER INCREASING `BULK_WAIT_TIME` ### ### GID: 0a9a2201bc9841bfaafdaa7f630e1543 - File_ID: fb970152823a5b9068341dbe36fc696d4cb7ee7c ### ### ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM ### ### Track_ID: 0k0mscf6Wz9O9rIS3S42MX ### ### PAUSED: WAITING FOR 30 SECONDS BETWEEN DOWNLOADS ### [∙∙∙] Preparing Download... ### ERROR: FAILED TO FETCH AUDIO KEY ### ### MAY BE CAUSED BY RATE LIMITS - CONSIDER INCREASING `BULK_WAIT_TIME` ### ### GID: 60f4edfbe96a4fc2ba5b69d5a2f06daf - File_ID: 440416a94ff76b9e241389f8f6fb218d9571bc2b ### ### ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM ### ### Track_ID: 2WXcbvwgAa3xrm7IfgeMjB ### ### PAUSED: WAITING FOR 30 SECONDS BETWEEN DOWNLOADS ### ### USER CANCELED DOWNLOADS EARLY ### ### ATTEMPTING TO CLEAN UP ### ### ERROR: CLEAN UP COMPLETE ### ### LOGGING ERROR AND TRACEBACK ### ` Then I repeated it using the --debug flag and recieved the following: `C:\Users\***>zotify --username *** --output "{playlist}{album}___{track_number} {song_name}---{track_id}" --song-archive-location G:\zotify\ --skip-previously-downloaded=True --root-path G:\zotify --md-allgenres=True --download-lyrics=False --download-format mp3 --download-quality high --retry-attempts 10 --print-skips=True --print-download-progress=True --print-errors=True --print-downloads=True --bulk-wait-time 30 https://open.spotify.com/intl-de/track/79lc69ZXfL4WmJIzVSDmWT --debug DEBUG ### config_DEBUG.json saved to C:\Users\***\AppData\Roaming\Zotify ### ### zotify_DEBUG_2025-11-25_11-38-23.log logging to G:\zotify ### [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... [●∙∙] Logging in... [∙●∙] Logging in... [∙∙●] Logging in... [∙∙∙] Logging in... [∙∙∙] Logging in... DEBUG Session Initialized Successfully User Subscription Type: FREE Requested Parsed as 1 URL [∙∙∙] Fetching track information... [●∙∙] Fetching track information... [∙●∙] Fetching track information... [∙∙●] Fetching track information... [∙∙∙] Parsing track information... [∙∙∙] Fetching bulk parent album information... [●∙∙] Fetching bulk parent album information... [∙●∙] Fetching bulk parent album information... DEBUG Total API Calls: 2 Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "C:\Python 3\Scripts\zotify.exe\__main__.py", line 6, in <module> File "C:\Python 3\Lib\site-packages\zotify\__main__.py", line 140, in main args.func(args, modes) File "C:\Python 3\Lib\site-packages\zotify\app.py", line 78, in client perform_query(args) File "C:\Python 3\Lib\site-packages\zotify\app.py", line 69, in perform_query raise e File "C:\Python 3\Lib\site-packages\zotify\app.py", line 44, in perform_query Query(Zotify.DATETIME_LAUNCH).request(urls).execute() File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1696, in execute self.download() File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1632, in download skipped = {d for d in self.downloadables if d.check_skippable()} ^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1316, in check_skippable super().check_skippable() File "C:\Python 3\Lib\site-packages\zotify\api.py", line 1173, in check_skippable self._skippable = all([child.check_skippable() for child in self.extChildren()]) ^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\api.py", line 890, in check_skippable super().check_skippable() File "C:\Python 3\Lib\site-packages\zotify\api.py", line 377, in check_skippable self._in_global_archive = self.id in get_archived_item_ids() ^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 322, in get_archived_item_ids entries = get_archived_entries(dir_path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 314, in get_archived_entries upgrade_legacy_archive(entries, archive_path) File "C:\Python 3\Lib\site-packages\zotify\utils.py", line 278, in upgrade_legacy_archive reliable_tags, unreliable_tags = test_track.get_audio_tags() ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\api.py", line 808, in get_audio_tags utag_vals[utag] = fetch_unreliable_tag(taglabel) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python 3\Lib\site-packages\zotify\api.py", line 792, in fetch_unreliable_tag val = val.text ^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'text'` This is the content of the logfile: `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: 1434f3652f2bd47802613b19a1799221c285eef5, ap: ap-gew4.spotify.com:80 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 INFO:Librespot:Session:Skipping 02 INFO:Librespot:Session:Received license_version: 0 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): apresolve.spotify.com:443 INFO:Librespot:Session:Received country_code: DE DEBUG:Librespot:Session:Parsed product info: {'type': 'free', 'ab-ad-player-targeting': '1', 'ab-watch-now': '0', 'ab_recently_played_feature_time_filter_threshold': 'com.spotify.gaia=30,driving-mode=120,spotify%3Ainternal%3Astartpage=30', 'ad-formats-preroll-video': '0', 'ad-session-persistence': '1', 'ads': '1', 'app-developer': '0', 'arsenal_country': '1', 'audio-preview-url-template': 'https://p.scdn.co/mp3-preview/{id}', 'audio-quality': '0', 'audiobook-onboarding-completed': '0', 'autoplay': '1', 'capping-bar-threshold': '3601', 'catalogue': 'free', 'client-deprecated': '1', 'collection': '1', 'created_by_partner': None, 'employee-free-opt-in': '0', 'enable-annotations': '2', 'enable-annotations-read': '0', 'enable-crossfade': '1', 'explicit-content': '1', 'filter-explicit-content': '0', 'financial-product': 'pr:free,tc:0', 'head-file-caching': '1', 'head-files': '1', 'head-files-url': 'https://heads-fa-tls13.spotifycdn.com/head/{file_id}', 'high-bitrate': '0', 'image-url': 'https://i.scdn.co/image/{file_id}', 'incognito_mode_timeout': '21600', 'is_email_verified': '1', 'key-caching-auto-offline': '0', 'key-caching-max-count': '10000', 'key-caching-max-offline-seconds': '1800', 'key-memory-cache-mode': '1:15,300', 'libspotify': '0', 'license-agreements': None, 'metadata-link-lookup-modes': '0', 'mobile': '0', 'name': 'Spotify Free', 'nft-disabled': '1', 'offline': '0', 'on-demand': '1', 'on-demand-trial': 'expired', 'on-demand-trial-in-progress': '0', 'payments-locked-state': '0', 'player-license': 'on-demand', 'player-license-v2': 'on-demand', 'playlist-annotations-markup': '0', 'preferred-locale': 'en', 'prefetch-keys': '1', 'prefetch-strategy': '18', 'prefetch-window-max': '2', 'publish-activity': '0', 'publish-playlist': '1', 'radio': '1', 'rating-access': '1', 'remote-control': '6', 'restrict-playlist-collaboration': '0', 'send-email': '0', 'shows-collection': '1', 'shows-collection-jam': '1', 'shuffle': '0', 'shuffle-algorithm': 'FRESH', 'sidebar-navigation-enabled': '0', 'storage-size-config': '10240,90,500,3', 'streaming': '1', 'streaming-rules': None, 'ugc-abuse-report': '1', 'ugc-abuse-report-url': 'https://support.spotify.com/abuse/?uri={uri}', 'video-cdn-sampling': '100', 'video-device-blacklisted': '0', 'video-manifest-url': 'https://spclient.wg.spotify.com/manifests/v6/{type}/sources/{source_id}/options/supports_drm', 'widevine-license-url': 'https://spclient.wg.spotify.com/widevine-license/v1/video/license'} INFO:Librespot:Session:Skipping 1f INFO:Librespot:Session:Skipping 69 DEBUG:Librespot:MercuryClient:Handling packet, cmd: 0xb5, seq: -8079893138107269120, flags: b'\x01', parts: 1 DEBUG:Librespot:MercuryClient:Couldn't dispatch Mercury event seq: -8079893138107269120, uri: hm://pusher/v1/connections/MTQzNGYzNjUyZjJiZDQ3ODAyNjEzYjE5YTE3OTkyMjFjMjg1ZWVmNStBUCt0Y3A6Ly8wYWIxNTFlZC5pcC5nZXc0LnNwb3RpZnkubmV0OjUwMDYrMjcyRTgxRjQ1MjE3OTRFM0VCMjc4NjNCQjhFREZGNUI5M0I1OEEzQjUyODk1QjVDRUY3ODdCQTI2NEYzREI0Ng%3D%3D, code: 200, payload: b'' DEBUG:Librespot:Session:Received 0x10: fa37779a9d1a5dec3a9e515925a73f58a51c3044 DEBUG:urllib3.connectionpool:https://apresolve.spotify.com:443 "GET /?type=dealer HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): login5.spotify.com:443 DEBUG:urllib3.connectionpool:https://login5.spotify.com:443 "POST /v3/login HTTP/1.1" 200 None INFO:Librespot:TokenProvider:Login5 authentication successful, got access token DEBUG:Librespot:TokenProvider:Using Login5 access token for scopes: ['playlist-read'] INFO:Librespot:Session:Authenticated as 31hrn2i5wvhx756pktrzirk5jooy! INFO:Librespot:Session:Skipping unknown command cmd: 0x75, payload: b'\x00\x00\x01' DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): login5.spotify.com:443 DEBUG:urllib3.connectionpool:https://login5.spotify.com:443 "POST /v3/login HTTP/1.1" 200 None INFO:Librespot:TokenProvider:Login5 authentication successful, got access token DEBUG:Librespot:TokenProvider:Using Login5 access token for scopes: [('user-read-email', 'playlist-read-private', 'user-library-read', 'user-follow-read')] DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.spotify.com:443 DEBUG:urllib3.connectionpool:https://api.spotify.com:443 "GET /v1/tracks/79lc69ZXfL4WmJIzVSDmWT?market=from_token HTTP/1.1" 200 None DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.spotify.com:443 DEBUG:urllib3.connectionpool:https://api.spotify.com:443 "GET /v1/albums?market=from_token&ids=6vxv7hGXgjaUmMt9UyXFpG HTTP/1.1" 200 None ` And this is config_DEBUG.json: `{ "DEBUG": "True", "ROOT_PATH": "", "SAVE_CREDENTIALS": "True", "CREDENTIALS_LOCATION": "", "OUTPUT": "", "OUTPUT_SINGLE": "{artist}/{album}/{artist}_{song_name}", "OUTPUT_ALBUM": "{artist}/{album}/{album_num}_{artist}_{song_name}", "OUTPUT_PLAYLIST_EXT": "{playlist}/{playlist_num}_{artist}_{song_name}", "OUTPUT_LIKED_SONGS": "Liked Songs/{artist}_{song_name}", "ROOT_PODCAST_PATH": "", "SPLIT_ALBUM_DISCS": "False", "MAX_FILENAME_LENGTH": "0", "OPTIMIZED_DOWNLOADING": "True", "BULK_WAIT_TIME": "1", "DOWNLOAD_REAL_TIME": "False", "TEMP_DOWNLOAD_DIR": "", "DOWNLOAD_PARENT_ALBUM": "True", "NO_COMPILATION_ALBUMS": "False", "REGEX_ENABLED": "False", "REGEX_TRACK_SKIP": "", "REGEX_EPISODE_SKIP": "", "REGEX_ALBUM_SKIP": "", "DOWNLOAD_FORMAT": "ogg", "DOWNLOAD_QUALITY": "auto", "TRANSCODE_BITRATE": "auto", "CUSTOM_FFMEPG_ARGS": "", "SONG_ARCHIVE_LOCATION": "", "DISABLE_SONG_ARCHIVE": "False", "DISABLE_DIRECTORY_ARCHIVES": "False", "SKIP_EXISTING": "True", "SKIP_PREVIOUSLY_DOWNLOADED": "False", "EXPORT_M3U8": "False", "M3U8_LOCATION": "", "M3U8_REL_PATHS": "True", "LIKED_SONGS_ARCHIVE_M3U8": "True", "DOWNLOAD_LYRICS": "True", "LYRICS_LOCATION": "", "LYRICS_FILENAME": "{artist}_{song_name}", "ALWAYS_CHECK_LYRICS": "False", "LYRICS_MD_HEADER": "False", "LANGUAGE": "en", "STRICT_LIBRARY_VERIFY": "True", "MD_DISC_TRACK_TOTALS": "True", "MD_SAVE_GENRES": "False", "MD_ALLGENRES": "True", "MD_GENREDELIMITER": ",", "MD_ARTISTDELIMITER": ", ", "MD_SAVE_LYRICS": "True", "ALBUM_ART_JPG_FILE": "False", "SEARCH_QUERY_SIZE": "10", "RETRY_ATTEMPTS": "10", "CHUNK_SIZE": "20000", "REDIRECT_ADDRESS": "127.0.0.1", "PRINT_SPLASH": "False", "PRINT_PROGRESS_INFO": "True", "PRINT_SKIPS": "True", "PRINT_DOWNLOADS": "True", "PRINT_DOWNLOAD_PROGRESS": "True", "PRINT_URL_PROGRESS": "True", "PRINT_ALBUM_PROGRESS": "True", "PRINT_ARTIST_PROGRESS": "True", "PRINT_PLAYLIST_PROGRESS": "True", "PRINT_WARNINGS": "True", "PRINT_ERRORS": "True", "PRINT_API_ERRORS": "True", "STANDARD_INTERFACE": "False", "FFMPEG_LOG_LEVEL": "error" }` I also found a couple of other logfiles from previous commands which I cannot reference anymore, which only contained repeating lines of "CRITICAL:Librespot:AudioKeyManager:Audio key error, code: 1" (this one was named zotify_2025-11-25_11-37-24.log) Edit: sorry for the messy layout, the code brackets don't seem too work like I want them too
kerem 2026-02-27 04:57:35 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@Googolplexed0 commented on GitHub (Nov 29, 2025):

File "C:\Python 3\Lib\site-packages\zotify\api.py", line 792, in fetch_unreliable_tag
val = val.text
^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'text'`

This bug should be fixed with v0.10.28.

ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM

This is a known issue for free accounts, see #86.

<!-- gh-comment-id:3590781446 --> @Googolplexed0 commented on GitHub (Nov 29, 2025): > File "C:\Python 3\Lib\site-packages\zotify\api.py", line 792, in fetch_unreliable_tag > val = val.text > ^^^^^^^^ > AttributeError: 'NoneType' object has no attribute 'text'` This bug should be fixed with v0.10.28. > ERROR: SKIPPING TRACK - FAILED TO GET CONTENT STREAM This is a known issue for free accounts, see #86.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/zotify#110
No description provided.