chbrown / overdrive

Bash script to download mp3s from the OverDrive audiobook service

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Libraries omitting ODM download links

mattppal opened this issue · comments

commented

It seems like OverDrive is moving away from allowing access ODM files. One particular library I use no longer has an option to download them from their site.

Is there a way to get access to the ODM data from the audiobook ID? e.g. XXXX.listen.overdrive.com?

Yeah I've noticed that too — worrying trend, but there are workarounds (for now). Easiest is probably to try setting your browser User-Agent to look like you're using Windows.

Other users might have other methods? (I wish I could ping my star-ers like a $lack channel to ask for advice, because this question is definitely outside the scope of this codebase, but very relevant to the userbase.)

commented

Thanks, I have a user-agent switcher. Firefox windows seemed to do the trick!

With Overdrive depreciating their Mac app and limiting the number of routes to get ODM files, it seems like they're trying to phase out downloads and force users to Libby/streaming.

I'll keep an eye on this thread for other suggestions, thanks for your help 👍

Btw, just added a note to this effect in the README, but I'm gonna leave the issue open for a while in case anyone else knows of alternatives.

I tried using the chrome extension to modify my user-agent and I'm not seeing the download button. I've tried a couple of variations including Firefox on Windows and a Mac Mojave Safari version without success. Am I doing it wrong or have they changed the library websites to limit downloads even further?

Can anyone else confirm that changing the user-agent works? If so which string did you use?

For me, OverDrive asks you whether you have the OverDrive app install on your computer. I clicked the arrow to say yes. It then allowed me to download the odm file. I changed my user agent manually by going to:
about:config
then creating the string
general.useragent.override
with
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/605.1.15 (KHTML, like Gecko)
which I found from whatismybrowser.com.

Edit: I checked the help docs and it now says:

As of February 23, 2022, OverDrive's desktop software for audiobooks is no longer available to install. As an alternative, you can borrow and listen to audiobooks using Libby (for libraries), Sora (for schools), or your library's OverDrive website.

commented

@johngully I can confirm they added an additional step. The Mac Overdrive app is no longer available, but there is a Windows version. Thus, you must select a user agent for Windows. For me, Windows Firefox 33 yields the following image, where I can download the titles. It appears they added an extra step. I wouldn't be surprised if they close this method off soon as well.

image

Thanks for the help. It was the need to expand the "Do you have the Overdrive App" accordion that I was missing. I'm good to go now!

I have been using this script for a while to help access audiobooks I have borrowed from my local library through Overdrive. With the increased difficulty of access to the mp3 downloads I created a project to make things a little easier on everyone. It's a node v17+ based project that creates a command line utility that simplifies the process of both acquiring the .odm and downloading the .mp3 files. Once you have a book on loan in your Overdrive account, this command will take care of the rest. It's pretty early (I'm the only one using it), but wanted to share and see if anyone else found it helpful.

I have attempted to make getting setup fairly straight forward. Here's an example of what it should take:

npm install -g overdrivedownload
odm config -l example-library-name -u example-username -p example-password -dl "./example/dowload/path"
odm "Title of book"

Big thanks to @chbrown and the work done here! My code is really standing on the shoulders of folks way smarter than me :)

For anyone that has only a link (e.g. from a library page, like the "Listen now in browser" pictured above), I created a script that will download the mp3s from the link:
https://github.com/arnavdugar/odm

Good morning,

Does your script work directly with the public library app Libby now that Overdrive files have been retired? If so, can you give more detailed steps on how to use it to download the library audiobook MP3 odm files. I’ve been using chbrown’s script on my MacBook Pro by changing to windows on Safari and it worked beautifully. I’d love to continue to being able to access the odm files and to use my ipod to listen to audiobooks. Thanks in advance. Eln

How do I extract the “Listen now in browser” link from the Libby Library app in order to apply your script?

Hi, I might be doing something differently than you. I don't have the Libby app. Instead, once I check out the audiobook from the library, there's a button to "listen now in browser". I'm using the link for that button.