diff --git a/readit.py b/readit.py index 6b58d2c..a90e4cb 100755 --- a/readit.py +++ b/readit.py @@ -3,7 +3,7 @@ from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.common.exceptions import NoSuchElementException -import argparse, multiprocessing, urllib.request, urllib.error, urllib.parse, time, os +import argparse, multiprocessing, urllib.request, urllib.error, urllib.parse, shutil, time, os import helpers, helpers.scripts, setuptools def status(driver): @@ -74,11 +74,11 @@ def canvasHandler(driver, id): except Exception as e: print(e) - print("Sorry, this type of magazine is not supported yet. Please send the output above to fread@kumi.email.") - exit(1) + raise Exception("Sorry, this type of magazine is not supported yet. Please send the output above to fread@kumi.email.") def hasCanvas(driver, id): - loadPage("https://app.myreadit.com/reader/%s#1" % id, driver) + if not loadPage("https://app.myreadit.com/reader/%s#1" % id, driver): + raise ValueError("Issue %s does not exist." % id) try: assert len(driver.find_elements_by_tag_name("canvas")) == 1 @@ -88,11 +88,16 @@ def hasCanvas(driver, id): def magazineHandler(driver, id, makepdf = True): if helpers.makeDir(id): - loginHandler(driver) - page = canvasHandler(driver, id) if hasCanvas(driver, id) else imgHandler(driver, id) + try: + loginHandler(driver) + page = canvasHandler(driver, id) if hasCanvas(driver, id) else imgHandler(driver, id) - if makepdf: - helpers.makePDF(id, page, helpers.JPG) + if makepdf: + helpers.makePDF(id, page, helpers.JPG) + + except Exception: + shutil.rmtree(id) + raise else: print("[NOTICE] Skipping issue %s - already exists." % id)