yt-dlp icon indicating copy to clipboard operation
yt-dlp copied to clipboard

Add support for Public Radio Exchange (PRX)

Open wkrick opened this issue 1 week ago • 1 comments

Checklist

  • [x] I'm reporting a new site support request
  • [x] I've verified that I have updated yt-dlp to nightly or master (update instructions)
  • [x] I've checked that all provided URLs are playable in a browser with the same IP and same login details
  • [x] I've checked that none of provided URLs violate any copyrights or contain any DRM to the best of my knowledge
  • [x] I've searched the bugtracker for similar requests including closed ones. DO NOT post duplicates
  • [x] I've read about sharing account credentials and am willing to share it if required

Region

United States

Example URLs

Sample link with a single stream: https://exchange.prx.org/pieces/558187?m=false

Sample link with multiple streams: https://exchange.prx.org/pieces/507265?m=false

Playlist link: https://exchange.prx.org/playlists/354104

Provide a description that is worded well enough to be understood

This site features streams of public radio streams and podcasts using an embedded player.

Provide verbose output that clearly demonstrates the problem

  • [x] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
  • [x] If using API, add 'verbose': True to YoutubeDL params instead
  • [x] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output

[debug] Command-line config: ['-vU', 'https://exchange.prx.org/pieces/507265?m=false']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version [email protected] from yt-dlp/yt-dlp-nightly-builds [6ca23ffaa] (win_exe)
[debug] Python 3.10.11 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1t  7 Feb 2023)
[debug] exe versions: ffmpeg 7.0.1-full_build-www.gyan.dev (setts)
[debug] Optional libraries: Cryptodome-3.21.0, brotli-1.1.0, certifi-2025.01.31, curl_cffi-0.5.10, mutagen-1.47.0, requests-2.32.3, sqlite3-3.40.1, urllib3-2.3.0, websockets-14.2
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets, curl_cffi
[debug] Loaded 1841 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp-nightly-builds/releases/latest
Latest version: [email protected] from yt-dlp/yt-dlp-nightly-builds
yt-dlp is up to date ([email protected] from yt-dlp/yt-dlp-nightly-builds)
[generic] Extracting URL: https://exchange.prx.org/pieces/507265?m=false
[generic] 507265?m=false: Downloading webpage
WARNING: [generic] Falling back on generic information extractor
[generic] 507265?m=false: Extracting information
[debug] Looking for embeds
ERROR: Unsupported URL: https://exchange.prx.org/pieces/507265?m=false
Traceback (most recent call last):
  File "yt_dlp\YoutubeDL.py", line 1637, in wrapper
  File "yt_dlp\YoutubeDL.py", line 1772, in __extract_info
  File "yt_dlp\extractor\common.py", line 747, in extract
  File "yt_dlp\extractor\generic.py", line 2566, in _real_extract
yt_dlp.utils.UnsupportedError: Unsupported URL: https://exchange.prx.org/pieces/507265?m=false

wkrick avatar Feb 16 '25 02:02 wkrick