From bca340ffe939a9c2072ff0c8d80d6a9df710023f Mon Sep 17 00:00:00 2001 From: Jamie Osborne Date: Wed, 20 Dec 2017 20:56:19 +0000 Subject: [PATCH 1/4] Fix english but non-US site being forced to default US site --- Contents/Code/__init__.py | 1 - 1 file changed, 1 deletion(-) diff --git a/Contents/Code/__init__.py b/Contents/Code/__init__.py index 192371a..7f3e617 100644 --- a/Contents/Code/__init__.py +++ b/Contents/Code/__init__.py @@ -57,7 +57,6 @@ def SetupUrls(sitetype, base, lang='en'): Log('Pulling language from sites array') lang=sites_langs[base]['lang'] if lang in intl_sites : - base=intl_sites[lang]['url'] urlsearchtitle=intl_sites[lang]['urltitle'] ctx['REL_DATE']=intl_sites[lang]['rel_date'] ctx['NAR_BY' ]=intl_sites[lang]['nar_by'] From fc6604f4248397aec417f60b8674aba3f857dedf Mon Sep 17 00:00:00 2001 From: Jamie Osborne Date: Sun, 24 Dec 2017 18:51:01 +0000 Subject: [PATCH 2/4] Initialise rating as float to avoid error when not found --- Contents/Code/__init__.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Contents/Code/__init__.py b/Contents/Code/__init__.py index 7f3e617..3e8d17b 100644 --- a/Contents/Code/__init__.py +++ b/Contents/Code/__init__.py @@ -471,7 +471,7 @@ def update(self, metadata, media, lang, force=False): pass date=None - rating=None + rating=0.0 series='' genre1=None genre2=None @@ -479,6 +479,7 @@ def update(self, metadata, media, lang, force=False): for r in html.xpath('//div[contains (@id, "adbl_page_content")]'): date = self.getDateFromString(self.getStringContentFromXPath(r, '//li[contains (., "{0}")]/span[2]//text()'.format(ctx['REL_DATE_INFO']).decode('utf-8'))) title = self.getStringContentFromXPath(r, '//h1[contains (@class, "adbl-prod-h1-title")]/text()') + rating = self.getStringContentFromXPath(r, '//span[contains (@class, "rating-average")]/text()') murl = self.getAnchorUrlFromXPath(r, 'div/div/div/div/a[1]') thumb = self.getImageUrlFromXPath(r, 'div/div/div/div/div/img') author = self.getStringContentFromXPath(r, '//li//a[contains (@class,"author-profile-link")][1]') @@ -582,6 +583,9 @@ def update(self, metadata, media, lang, force=False): metadata.summary = synopsis metadata.posters[1] = Proxy.Media(HTTP.Request(thumb)) metadata.posters.validate_keys(thumb) + + # make sure rating is not an empty string + rating = float(rating if rating != '' else '0') metadata.rating = float(rating) * 2 metadata.title = title From e1e29737f8110322a99f94d22271eeddddf249ae Mon Sep 17 00:00:00 2001 From: Jamie Osborne Date: Sat, 23 Dec 2017 19:34:35 +0000 Subject: [PATCH 3/4] Workaround for 'Release Date' label differences --- Contents/Code/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Contents/Code/__init__.py b/Contents/Code/__init__.py index 3e8d17b..cdd1096 100644 --- a/Contents/Code/__init__.py +++ b/Contents/Code/__init__.py @@ -31,7 +31,7 @@ def json_decode(output): THREAD_MAX = 20 intl_sites={ - 'en' : { 'url': 'www.audible.com' , 'urltitle' : u'title=' , 'rel_date' : u'Release date' , 'nar_by' : u'Narrated By' , 'nar_by2': u'Narrated by'}, + 'en' : { 'url': 'www.audible.com' , 'urltitle' : u'title=' , 'rel_date' : u'Release ' , 'nar_by' : u'Narrated By' , 'nar_by2': u'Narrated by'}, 'fr' : { 'url': 'www.audible.fr' , 'urltitle' : u'searchTitle=' , 'rel_date' : u'Date de publication' , 'nar_by' : u'Narrateur(s)' , 'nar_by2': u'Lu par'}, 'de' : { 'url': 'www.audible.de' , 'urltitle' : u'searchTitle=' , 'rel_date' : u'Erscheinungsdatum' , 'nar_by' : u'Gesprochen von', 'rel_date2': u'Veröffentlicht'}, 'it' : { 'url': 'www.audible.it' , 'urltitle' : u'searchTitle=' , 'rel_date' : u'Data di Pubblicazione', 'nar_by' : u'Narratore' }, From 7e195703dc94b81b0db9d0cc2caa426f9a7f1508 Mon Sep 17 00:00:00 2001 From: Jamie Osborne Date: Fri, 5 Jan 2018 21:05:05 +0000 Subject: [PATCH 4/4] Fix for no narrator returned via adbl_page_content --- Contents/Code/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Contents/Code/__init__.py b/Contents/Code/__init__.py index cdd1096..1ff9ac6 100644 --- a/Contents/Code/__init__.py +++ b/Contents/Code/__init__.py @@ -483,7 +483,7 @@ def update(self, metadata, media, lang, force=False): murl = self.getAnchorUrlFromXPath(r, 'div/div/div/div/a[1]') thumb = self.getImageUrlFromXPath(r, 'div/div/div/div/div/img') author = self.getStringContentFromXPath(r, '//li//a[contains (@class,"author-profile-link")][1]') - narrator = self.getStringContentFromXPath(r, '//li[contains (., "{0}")]//span[2]'.format(ctx['NAR_BY_INFO'])).strip().decode('utf-8') + narrator = self.getStringContentFromXPath(r, '//li[contains (@class,"adbl-narrator-row")]/span[2]').strip().decode('utf-8') studio = self.getStringContentFromXPath(r, '//li//a[contains (@id,"PublisherSearchLink")][1]') synopsis = self.getStringContentFromXPath(r, '//div[contains (@class, "disc-summary")]/div[*]').strip() series = self.getStringContentFromXPath(r, '//div[contains (@class, "adbl-series-link")]//a[1]')