From 7d560cd52b3e197c8aa5b869e6eb7467a7258d56 Mon Sep 17 00:00:00 2001 From: Maksim Kneller Date: Tue, 13 Jul 2021 15:07:53 -0400 Subject: [PATCH] Update amazon.py fixed Amazon plugin not picking up publication date when updating metadata by ASIN --- src/calibre/ebooks/metadata/sources/amazon.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/metadata/sources/amazon.py b/src/calibre/ebooks/metadata/sources/amazon.py index 55c638d5a9..f0af73584f 100644 --- a/src/calibre/ebooks/metadata/sources/amazon.py +++ b/src/calibre/ebooks/metadata/sources/amazon.py @@ -509,7 +509,9 @@ class Worker(Thread): # Get details {{{ self.result_queue.put(mi) def totext(self, elem): - return self.tostring(elem, encoding='unicode', method='text').strip() + res = self.tostring(elem, encoding='unicode', method='text') + filtered_characters = list(s for s in res if s.isprintable()) + return ''.join(filtered_characters).strip() def parse_title(self, root): @@ -908,6 +910,10 @@ class Worker(Thread): # Get details {{{ ans = check_isbn(val) if ans: self.isbn = mi.isbn = ans + elif name in {'Publication date'}: + from calibre.utils.date import parse_only_date + date = self.delocalize_datestr(val) + mi.pubdate = parse_only_date(date, assume_utc=True) def parse_isbn(self, pd): items = pd.xpath(