Well, this actually seems to work.
This commit is contained in:
parent
e069cb3788
commit
8d0c778354
|
@ -1,4 +1,4 @@
|
|||
import errno, os, PIL, fpdf
|
||||
import errno, os, PIL, fpdf, urllib.request
|
||||
|
||||
JPG = 0
|
||||
PNG = 1
|
||||
|
@ -14,8 +14,8 @@ def makeDir(issue):
|
|||
|
||||
return False
|
||||
|
||||
def makePDF(issue, pages, type = JPG):
|
||||
ext = "jpg" if type == JPG else "png"
|
||||
def makePDF(issue, pages, ftype = JPG):
|
||||
ext = "jpg" if ftype == JPG else "png"
|
||||
cover = PIL.Image.open("%s/1.%s" % (str(issue), ext))
|
||||
x, y = cover.size
|
||||
|
||||
|
@ -27,9 +27,8 @@ def makePDF(issue, pages, type = JPG):
|
|||
|
||||
pdf.output("%s/issue.pdf" % str(issue), "F")
|
||||
|
||||
def downloadPage(canvas, issue, page, driver):
|
||||
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:
|
||||
o.write(b64)
|
||||
def downloadPage(url, issue, page, ftype = JPG):
|
||||
f = urllib.request.urlopen(url)
|
||||
|
||||
with open("%s/%i.%s" % (str(issue), int(page), "jpg" if ftype == JPG else "png"), "b+w") as o:
|
||||
o.write(f.read())
|
||||
|
|
17
readit.py
17
readit.py
|
@ -18,6 +18,8 @@ def loadPage(url, driver, period=5,init=False):
|
|||
driver.get(url)
|
||||
time.sleep(period)
|
||||
|
||||
print(url, driver.current_url)
|
||||
|
||||
return True if driver.current_url == url else False
|
||||
|
||||
def loginHandler(driver, user = setuptools.riuser(), password = setuptools.ripass()):
|
||||
|
@ -46,16 +48,17 @@ def pageHandler(driver, id, page):
|
|||
if not loadPage("https://app.myreadit.com/reader/%s#%i" % (id, int(page)), driver):
|
||||
return False
|
||||
|
||||
img = driver.find_element_by_id("page1").get_attribute("src")
|
||||
helpers.downloadPage(img, id, page, helpers.JPG)
|
||||
|
||||
try:
|
||||
img = driver.find_element_by_tag_name("canvas")
|
||||
helpers.downloadPage(img, id, page)
|
||||
img2 = driver.find_element_by_id("page2").get_attribute("src")
|
||||
helpers.downloadPage(img2, id, page + 1, helpers.JPG)
|
||||
return 2
|
||||
|
||||
except:
|
||||
print(driver.page_source)
|
||||
driver.save_screenshot("screenshot.png")
|
||||
raise
|
||||
return 1
|
||||
|
||||
return 1 if page == 1 else 2
|
||||
|
||||
def magazineHandler(driver, id, makepdf = True):
|
||||
if helpers.makeDir(id):
|
||||
|
@ -68,7 +71,7 @@ def magazineHandler(driver, id, makepdf = True):
|
|||
val = pageHandler(driver, id, page + 1)
|
||||
|
||||
if makepdf:
|
||||
helpers.makePDF(id, page, helpers.PNG)
|
||||
helpers.makePDF(id, page, helpers.JPG)
|
||||
|
||||
else:
|
||||
print("[NOTICE] Skipping issue %s - already exists." % id)
|
||||
|
|
Loading…
Reference in a new issue