Update .gitignore

This commit is contained in:
Klaus-Uwe Mitterer 2017-07-16 12:40:19 +02:00
parent 0cb7216cdc
commit f62ea91a10
3 changed files with 17 additions and 14 deletions

3
.gitignore vendored
View file

@ -5,3 +5,6 @@
config.cfg config.cfg
geckodriver.log geckodriver.log
ghostdriver.log
node_modules/

View file

@ -27,9 +27,9 @@ def makePDF(issue, pages, type = JPG):
pdf.output("%s/issue.pdf" % str(issue), "F") pdf.output("%s/issue.pdf" % str(issue), "F")
def downloadPage(url, issue, page): def downloadPage(canvas, issue, page, driver):
f = urllib.request.urlopen(url) b64 = driver.execute_script("return arguments[0].toDataURL('image/png').substring(21);", canvas)
with open("%s/%i.png" % (str(issue), int(page)), "b+w") as o: with open("%s/%i.png" % (str(issue), int(page)), "b+w") as o:
o.write(f.read()) o.write(b64)

View file

@ -28,7 +28,7 @@ def loginHandler(driver, user = setuptools.riuser(), password = setuptools.ripas
curfield = driver.find_element_by_name("password") curfield = driver.find_element_by_name("password")
curfield.send_keys(password) curfield.send_keys(password)
curfield.send_keys(Keys.RETURN) curfield.send_keys(Keys.RETURN)
time.sleep(3) time.sleep(3)
@ -46,17 +46,16 @@ def pageHandler(driver, id, page):
if not loadPage("https://app.myreadit.com/reader/%s#%i" % (id, int(page)), driver): if not loadPage("https://app.myreadit.com/reader/%s#%i" % (id, int(page)), driver):
return False return False
img = driver.find_element_by_id("page1").get_attribute("src")
helpers.downloadPage(img, id, page)
try: try:
img2 = driver.find_element_by_id("page2").get_attribute("src") img = driver.find_element_by_tag_name("canvas")
helpers.downloadPage(img2, id, page + 1) helpers.downloadPage(img, id, page)
return 2
except: except:
return 1 print(driver.page_source)
driver.save_screenshot("screenshot.png")
raise
return 1 if page == 1 else 2
def magazineHandler(driver, id, makepdf = True): def magazineHandler(driver, id, makepdf = True):
if helpers.makeDir(id): if helpers.makeDir(id):
@ -79,8 +78,9 @@ if __name__ == "__main__":
parser.add_argument("id", help="ID of the magazine to be downloaded. May be a URL.", nargs="+") parser.add_argument("id", help="ID of the magazine to be downloaded. May be a URL.", nargs="+")
ids = parser.parse_args().id ids = parser.parse_args().id
driver = webdriver.Firefox()
driver = webdriver.PhantomJS(service_args=["--web-security=no"])
for id in ids: for id in ids:
use = id.split("/")[-1].split("#")[0] use = id.split("/")[-1].split("#")[0]
magazineHandler(driver, use) magazineHandler(driver, use)