diff --git a/vrobbler/apps/books/utils.py b/vrobbler/apps/books/utils.py index 1199fc0..6912653 100644 --- a/vrobbler/apps/books/utils.py +++ b/vrobbler/apps/books/utils.py @@ -1,7 +1,10 @@ from titlecase import titlecase def parse_readcomicsonline_uri(uri: str) -> tuple: - path = uri.split("comic/")[1] + try: + path = uri.split("comic/")[1] + except IndexError: + return "", "", "" parts = path.split('/') title = "" diff --git a/vrobbler/apps/scrobbles/scrobblers.py b/vrobbler/apps/scrobbles/scrobblers.py index d5ac72e..362f1a1 100644 --- a/vrobbler/apps/scrobbles/scrobblers.py +++ b/vrobbler/apps/scrobbles/scrobblers.py @@ -263,15 +263,25 @@ def manual_scrobble_book( if READCOMICSONLINE_URL in title: title, volume, page = parse_readcomicsonline_uri(title) + if not title: + logger.info( + "[scrobblers] manual book scrobble request failed", + extra={ + "title": title, + "user_id": user_id, + "media_type": Scrobble.MediaType.BOOK, + }, + ) + return + title = f"{title} - Issue {volume}" if not page: page = 1 - log = BookLogData(page_data=BookPageLogData(page_number=page, start_ts=int(timezone.now().timestamp()))) logger.info("[scrobblers] Book page included in scrobble, should update!") - source = READCOMICSONLINE_URL + source = READCOMICSONLINE_URL.replace("https://", "") # TODO: Check for scrobble of this book already and if so, update the page count