From 4389870b85f9f30a292d4842d917859b905a75aa Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 01:22:35 -0400 Subject: [PATCH 1/6] Handle additional exceptions when fetching cover images --- src/backend/lib/library.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/lib/library.py b/src/backend/lib/library.py index e330780..3a362a7 100755 --- a/src/backend/lib/library.py +++ b/src/backend/lib/library.py @@ -285,7 +285,7 @@ class Catalogue: try: cover = book_zip.read(cover.name) return cover - except KeyError: + except Error as e: return False def compare_shelf_current(self): From efa5c057e4b7ac274770374ead13da59b2ecba1a Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 02:02:40 -0400 Subject: [PATCH 2/6] Begin debugging search query --- src/backend/lib/api_hooks.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/lib/api_hooks.py b/src/backend/lib/api_hooks.py index f529a5d..0d51701 100755 --- a/src/backend/lib/api_hooks.py +++ b/src/backend/lib/api_hooks.py @@ -16,6 +16,7 @@ class DuckDuckGo: :param _key: &t=h_&iar=images&iax=images&ia=images&format=json&pretty=1 """ _key = "&t=h_&iar=images&iax=images&ia=images&format=json&pretty=1" + breakpoint() try: query = query.string except AttributeError: From 8405fbed196b49e1f32e8d1fab61e1fea51b3fae Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 11:53:12 -0400 Subject: [PATCH 3/6] Added an extra layer of exception handling to image retrieval. --- src/backend/lib/api_hooks.py | 5 ++++- src/backend/lib/pyShelf.py | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/lib/api_hooks.py b/src/backend/lib/api_hooks.py index 0d51701..4c14802 100755 --- a/src/backend/lib/api_hooks.py +++ b/src/backend/lib/api_hooks.py @@ -21,7 +21,10 @@ class DuckDuckGo: query = query.string except AttributeError: query = query - search_result = requests.get(self.url + query + _key) + try: + search_result = requests.get(self.url + query + _key) + except Error as e: + return False try: image_result = search_result.json()["Image"] except ValueError: diff --git a/src/backend/lib/pyShelf.py b/src/backend/lib/pyShelf.py index a1816d3..89f9597 100755 --- a/src/backend/lib/pyShelf.py +++ b/src/backend/lib/pyShelf.py @@ -58,7 +58,7 @@ class Server: async def initialize_server(self): self.config.logger.info("INITIALIZE") self.serve = await websockets.serve(self.socketio, self.host[0], self.host[1]) - await asyncio.sleep(.01) + await asyncio.sleep(.1) self.config.logger.info("Server Initialization Complete") async def runImport(self): From d263c14040062c921d0a85fba2c6408ea0fb30b3 Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 13:51:10 -0400 Subject: [PATCH 4/6] Extended exception coverage --- src/backend/lib/library.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/lib/library.py b/src/backend/lib/library.py index 3a362a7..22cbbb8 100755 --- a/src/backend/lib/library.py +++ b/src/backend/lib/library.py @@ -281,8 +281,8 @@ class Catalogue: """ Opens epub as zip file filters then stores as list any files matching cover_regx """ - cover = book_zip.open(list(filter(self.cover_regx.search, book["files"]))[0]) try: + cover = book_zip.open(list(filter(self.cover_regx.search, book["files"]))[0]) cover = book_zip.read(cover.name) return cover except Error as e: From 0b6903aaa345b337ccd6d699feebd67d3c735b28 Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 14:04:16 -0400 Subject: [PATCH 5/6] syntax --- src/backend/lib/library.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/lib/library.py b/src/backend/lib/library.py index 22cbbb8..2b0f296 100755 --- a/src/backend/lib/library.py +++ b/src/backend/lib/library.py @@ -285,7 +285,7 @@ class Catalogue: cover = book_zip.open(list(filter(self.cover_regx.search, book["files"]))[0]) cover = book_zip.read(cover.name) return cover - except Error as e: + except Exception as e: return False def compare_shelf_current(self): From dfbc437685aebc54e52c79fb24aa758b46c5f38e Mon Sep 17 00:00:00 2001 From: th3r00t Date: Sat, 24 Jul 2021 14:21:17 -0400 Subject: [PATCH 6/6] Fixed a bug caused by the ddg api no longer fetching image results correctly. --- src/backend/lib/api_hooks.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/backend/lib/api_hooks.py b/src/backend/lib/api_hooks.py index 4c14802..00742d4 100755 --- a/src/backend/lib/api_hooks.py +++ b/src/backend/lib/api_hooks.py @@ -16,7 +16,6 @@ class DuckDuckGo: :param _key: &t=h_&iar=images&iax=images&ia=images&format=json&pretty=1 """ _key = "&t=h_&iar=images&iax=images&ia=images&format=json&pretty=1" - breakpoint() try: query = query.string except AttributeError: