From 85e8b5446ea1cdaa38c6a0e93d1fbf2140d228f9 Mon Sep 17 00:00:00 2001 From: Ai Tran Date: Fri, 20 Nov 2020 00:04:20 -0600 Subject: [PATCH] SB237: Use empty string with empty list for authors, publishers and subjects. --- safaribooks.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/safaribooks.py b/safaribooks.py index 8e80e73..cf399d1 100755 --- a/safaribooks.py +++ b/safaribooks.py @@ -171,9 +171,9 @@ class Display: def book_info(self, info): description = self.parse_description(info["description"]).replace("\n", " ") for t in [ - ("Title", info.get("title", "")), ("Authors", ", ".join(aut["name"] for aut in info.get("authors", ""))), + ("Title", info.get("title", "")), ("Authors", ", ".join(aut.get("name", "") for aut in info.get("authors", []))), ("Identifier", info.get("identifier", "")), ("ISBN", info.get("isbn", "")), - ("Publishers", ", ".join(pub["name"] for pub in info.get("publishers", ""))), + ("Publishers", ", ".join(pub.get("name", "") for pub in info.get("publishers", []))), ("Rights", info.get("rights", "")), ("Description", description[:500] + "..." if len(description) >= 500 else description), ("Release Date", info.get("issued", "")), @@ -951,8 +951,8 @@ class SafariBooks: escape(aut["name"]) ) for aut in self.book_info["authors"]) - subjects = "\n".join("{0}".format(escape(sub["name"])) - for sub in self.book_info["subjects"]) + subjects = "\n".join("{0}".format(escape(sub.get("name", ""))) + for sub in self.book_info.get("subjects", [])) return self.CONTENT_OPF.format( (self.book_info.get("isbn", self.book_id)), @@ -960,7 +960,7 @@ class SafariBooks: authors, escape(self.book_info.get("description", "")), subjects, - ", ".join(escape(pub["name"]) for pub in self.book_info.get("publishers", "")), + ", ".join(escape(pub.get("name", "")) for pub in self.book_info.get("publishers", [])), escape(self.book_info.get("rights", "")), self.book_info.get("issued", ""), self.cover,