macr0dev/Audiobooks.bundle

plex is not able to find authors at all

shedman214 opened this issue ยท 7 comments

my plex is not able to find any authors at all. as soon as I click search it says not found.
the books work just fine, but the authors cant be found. is there a way to fix that

I am experiencing the same issue

Until very recently, Audible didn't have author details so there has been nothing to pull or 'match' to. It's being worked on, but it is not something that is supposed to be working at this time.

They've recently added some author pages, but not for everyone.

Until very recently, Audible didn't have author details so there has been nothing to pull or 'match' to. It's being worked on, but it is not something that is supposed to be working at this time.

They've recently added some author pages, but not for everyone.

Thanks for the update. I read in the notes that the Author was being pulled from last.fm.. go to know

They've changed from last.fm to something else now (I forget what, musicbrainz maybe?) during the last big music library update late last year. So even that info is a little out of date. Either way, it's crowd sourced information if it's even there.

Looking at the Author "issue" and also the availability of the Audible API. This is very rough and ready but here's some example code to grab the info from Audible

import requests
import json
from bs4 import BeautifulSoup 

author_search_url = "https://api.audible.com/1.0/catalog/search?image_sizes=1215,558,900&keywords={0}&locale=en-GB&marketplace=AF2M0KC94RCEA&page=1&response_groups=contributors,product_desc,media,product_attrs,product_extended_attrs,product_plan_details,product_plans,relationships,sku"
headers={'User-Agent': 'Audible/652 CFNetwork/1209 Darwin/20.2.0'}
respJSON = requests.get(author_search_url.format("Earnest%20Cline"),headers=headers).json()
author_asin = respJSON['products'][0]['authors'][0]['asin']
author_url = 'https://www.audible.com/author/{0}?ipRedirectOverride=true&overrideBaseCountry=true'
author_html = requests.get(author_url.format(author_asin),headers=headers)
author_content = BeautifulSoup(author_html.text,"html.parser")
for img in author_content.select('img[class*="author-image-outline"]'):
    print(img['src'].replace('120','900'))
    
for p in author_content.select('p[class*="adbl-author-desc"]'):
    print(p.getText().strip())

It doesn't need authentication to access these parts of the API, I haven't found an author API call (The app can't do it) and the Author page appears to be .com only (well not .co.uk at least)

I'm going to hack away for my purposes but I'm happy to help if you want to look at building this in