From fe6e4e59eacbfc5aa58a5d9f889f336736ba2dca Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 21 Jun 2020 10:01:29 +0530 Subject: [PATCH] Amazon metadata download: Fix download of ratings not working from amazon.co.jp --- src/calibre/ebooks/metadata/sources/amazon.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/calibre/ebooks/metadata/sources/amazon.py b/src/calibre/ebooks/metadata/sources/amazon.py index fcfcbd0f08..4eede401c3 100644 --- a/src/calibre/ebooks/metadata/sources/amazon.py +++ b/src/calibre/ebooks/metadata/sources/amazon.py @@ -299,6 +299,7 @@ class Worker(Thread): # Get details {{{ self.ratings_pat = re.compile( r'([0-9.,]+) ?(out of|von|van|su|étoiles sur|つ星のうち|de un máximo de|de) ([\d\.]+)( (stars|Sternen|stelle|estrellas|estrelas|sterren)){0,1}') self.ratings_pat_cn = re.compile('平均([0-9.]+)') + self.ratings_pat_jp = re.compile(r'\d+つ星のうち([\d\.]+)') lm = { 'eng': ('English', 'Englisch', 'Engels'), @@ -575,6 +576,10 @@ class Worker(Thread): # Get details {{{ m = self.ratings_pat_cn.match(t) if m is not None: return float(m.group(1)) + elif self.domain == 'jp': + m = self.ratings_pat_jp.match(t) + if m is not None: + return float(m.group(1)) else: ans = parse_ratings_text(t) if ans is not None: