Originally Posted by kiwidude
Ok, so I've had a brief read through the GoodReads API
. To be honest, oauth looks to be a *pita* to work with. I'm sure Kovid can confirm this but I don't believe Calibre uses oauth anywhere already so no quick & easy Python code for me to copy from
. Plus there is the filth of callback urls which implies having a website to callback to...
I initially thought that as well (the need for a website for the callbacks), but I don't think it's a requirement. I think the callback URL is intended for websites, as a nice way to redirect the user back to your site after they've logged in at GoodReads and approved your app to have access.
Once a user has granted access to your app, I think your app is allowed to make changes to their data until they revoke the app's access.
The bit about the 1 request per second is odd though. That has to be there so they can deny access to abusive apps. I can't imagine they hold every app to such a low threshold. Any popular app is likely to hit with that frequency.
Anyway, thanks for looking into it. Hopefully there's enough interest for someone to tackle it. If I was more fluent with python I'd give it a go, but my past attempts at doing much with python didn't go so well.
The OAught stuff was definitely the sticky part though. GoodReads recommends using a library for the OAuth work. There's a python one here https://github.com/simplegeo/python-oauth2
, which you may have already found.