Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I wish there was a easy-to-find-downloads-of-audio NPR ...

But unfortunately, like almost all media outlets, finding an actual link that points to an actual mp3 file is very time consuming and difficult.

Here's an example ...

Let's say you want to download an episode of 1-A to listen to on an airplane. The front page of the website[1] has "listen" links and also a "subscribe to the "podcast"" link. But I don't want to "listen" and I don't want to subscribe to anything and I don't use itunes (or anything like itunes).

So you click the link to the actual episode of the show[2] but once again ... cute little "listen" link ... cute little "discuss" link ... but no way to download a file.

So now it's getting frustrating ... but as a last ditch effort, you turn off your brain and just type in "download 1-a episode" into google and come up with this link[3] which takes you to a different website (npr.org) which has a list of 1-a episodes (and our friend the "listen" button) but also has a cute little "..." button that expands into choices, one of which is "download".

[1] http://the1a.org/

[2] http://the1a.org/shows/2017-09-25/salman-rushdie

[3] http://www.npr.org/podcasts/510316/1a



You might find this NPR knowledge base article[1] interesting:

Every section of npr.org offers an RSS feed of its stories. To subscribe to a topic or show, paste the URL of a topic page, a program home page, or a story page into your RSS reader of choice. The reader should recognize the RSS feed within the page and allow you to subscribe.

Also, all podcasts from NPR and its member stations are available for RSS subscription. First, visit the NPR Podcast Directory and select a podcast. Then click the large blue “Subscribe” button and choose “Copy RSS Link” from the dropdown. Paste that link into the podcast application or RSS reader of your choice.

The NPR Podcast Directory[2] linked there seems like it may work for what you want. It shows all podcasts, and in each one the individual episodes all have that ... link you referred to. That looks to be the base site that you are finding through google, and it apparently has every podcast, so they have taken steps to make it easy to get them, there just seems to be poor discoverability for that project.

1: https://help.npr.org/customer/en/portal/articles/2094175-whe...

2: http://www.npr.org/podcasts/


First, let me thank you for showing me:

http://www.npr.org/podcasts/

... which I have bookmarked and which largely solves my usability problem with npr(.org).

However, the general problem - which is that it's always a pain to find a static link to a regular file - persists. Not every publisher has a nice page like this. In fact, some of them have no way to get an actual file without subscribing or rss-reading or "listen now"-ing.

The simple test is this: is there a link that I can right-click, and copy, and feed to curl without any doctoring or scripting ?

Most publishers fail this test.


My favorite workaround for this is starting the audio stream with chrome dev tools open and right clicking the network request and selecting "copy as curl". It's still more work but it's pretty bulletproof since the request it makes is identical to the one that comes from the browser.


I hate to say it but you might want to reconsider your stance on "anything like iTumes" there are really gread podcast specific clients out there that are lightweight, and to the point, you will also be able to download episodes for offline listening. I personally use Pocketcasts on Android. If you have an Android phone the Play Music app is already a podcast app on it's own.


I love PocketCast on my Android Phone.

Here is their web player - https://play.pocketcasts.com/

They have download option on all the feeds.


Forgot to mention their web player. Definitely falls under not needing to download / install anything extravagant. Also shows how worthwhile Pocketcasts is in general.


I agree, there are solutions out there like the aforementioned that are easier than seeking out individual mp3s from the websites. Overcast on iOS and Pocketcasts I have both used and are good.


Pocketcasts on iOS is excellent also. I would recommend it.


I've always got a giggle out of how much nicer it is to use, and how much faster it is than the actual Apple Podcasts app.


The Apple podcasts app is absolutely atrocious, and it only got worse in iOS11 where my podcasts aren't even in chronological order. (My previous gripe was that it simply refused to download podcasts until i hit cancel/download in succession for EVERY SINGLE PODCAST that was queued up, or else wait until some random time of day when it seemingly was able to download them all. This bug has persisted for years).

Unfortunately, I also play podcasts from my phone to my Sonos. It's bad enough that my bookmarks (last listened to location) aren't available when moving between the Podcasts app and the Sonos app, so the last thing I'm going to do is get a 3rd app into the mix where I have to manage subscriptions on 2 and listen on a 3rd.


Will you accept quick and dirty, inelegant?

All info, titles, summaries, urls, etc. is in 1.1M of html at http://wamu.org/shows/

Below extracts only title, audio ID, audio url, and audio length.

    curl -4o npr.htm http://wamu.org/shows/
    
    ls -lh npr.htm
    1.1M

    exec awk '{gsub(/\",\"/,"\n");print}' \
    |exec sed  '
       N;s/\\//g;N;/mp3/!d;/\\/d;
       /audioOffset/d;
       s/.*audioTitle\":\"//;
       s/audioLength\":\"//;
       s/audioFileID\"://;
       s/\"audioFile\":\"//;
       ' npr.htm
Output should be something like

    Salman Rushdie's American Tale
    2844294,https://downloads.wamu.org/mp3/1a/17/09/a2170925-2.mp3
    35:13
    Alabama Senate Race: More Than Moore-Strange
    2844300,https://downloads.wamu.org/mp3/1a/17/09/a1170925.mp3
    47:11
    Manafort In The Middle
    2807643,https://downloads.wamu.org/mp3/1a/17/09/a1170921.mp3
    47:11
I counted 214 audio urls total.

Live stream is at http://wamu-1.streamguys.com


Took me three clicks, one copy and one paste:

https://play.podtrac.com/npr-510316/npr.mc.tritondigital.com...

I think you're overcomplicating things, podcasts are pretty much RSS feeds of mp3 files, nothing to do iTunes.


Actually, the you need to add dl=1 to the params to start a download and skip the webplayer on the links (at least in my browser), which is non-obvious until you compare to a download link on the page, not in RSS.


I think the assumption is that people who want to download shows are consuming them with a podcast client, which will download or stream as you prefer.


^ It's unfortunate, but this is the explanation.


Why is this unfortunate? Podcasts are RSS feeds with direct MP3 download links embedded in them. It's hard to get more direct and standardized than that.


It's really easy to get more direct and standardized than that. Provide a direct download link.


I searched for "npr post cast rss" and found this:

https://help.npr.org/customer/portal/articles/2094175-where-...

Each podcast has a '...' which has a direct download link.

Or, you can view the RSS source, find the podcast you want then chuck the URL in your browser and download it that way.

eg.

https://play.podtrac.com/npr-510317/npr.mc.tritondigital.com...

In my browser gives me a player with a download link in it.


google the npr show + keyword "rss" and you'll find in the first page of results an rss file containing all of those links you are looking for


well "subscribe to the podcast" is "download the episodes", so i think you are getting in your own way on this one.

If you follow the subscribe link and click RSS feed, you get a list of the mp3 file locations.


(You can follow along on this page: http://the1a.org/audio/#/shows/2017-09-25/salman-rushdie/)

In the developer tools inspector, select the audio player and search for `div#external_player`, right click > "expand all", and there should be an "<audio>" tag. The `src` attribute of that contains the mp3 that you want.


The Audio Downloader Prime [0] add-on for Firefox automates this task.

[0] https://addons.mozilla.org/en-US/firefox/addon/audio-downloa...


I think that still falls under the category of time consuming and difficult. Well, at least difficult for the average computer user.


I gave the steps so that someone can script it. Python and lxml takes 30 minutes to script something like this with no prior knowledge. It isn't particularly difficult, even if it is slightly time consuming.


Pretty sure the average computer user looking for NPR audio is going to be perfectly happy with the podcast - ie an RSS feed of the MP3 files with descriptions and show notes.

I think demanding the ‘raw mp3’ is a bit of a corner case here.


The average computer user doesn't care about getting the raw MP3.


If you start at http://the1a.org/ and click the "Podcast" button on the banner and then click the "Subscribe" button, you arrive at http://www.npr.org/podcasts/510316/1a

So not entirely obvious, but kind of a straight line.


When I was downloading the back catalogue of 'Planet Money' I ended up writing a scraper and piping it to wget. Took a lot longer than expected.

Compared with This American Life: 'wget http://audio.thisamericanlife.org/jomamashouse/ismymamashous...


Why not download something like Pocket Casts? It lets you easily download episodes and, IIRC, you don't need to create an account.


Stitcher lets you select episodes to "listen later" and can keep the latest episode of every podcast you subscribe to downloaded for offline listening as well. It's a good way to manage all the podcasts you want to have handy.

Here's the page for 1-A for example: https://www.stitcher.com/podcast/national-public-radio/1a-2

disclaimer: former employee


I don't get why Stitcher has so much market share. Stitcher injects audio ads, has terrible download bandwidth, and requires the app to hit their central server to download a podcast. I used sticher for the last three months and recently switched back to Downcast and never looked back.


Step 1: highlight feature.

Step 2: receive complaints.


Step 3: improve service?


Usually Step 3 is to block all the suggested workarounds.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: