Add event comicPageLink for every previous link.
This event allows a listener to build connections between pages.
This commit is contained in:
parent
9f08b21a7e
commit
0a218c0283
2 changed files with 11 additions and 0 deletions
|
@ -38,6 +38,10 @@ class EventHandler(object):
|
|||
"""Emit a comic downloaded event. Should be overridden in subclass."""
|
||||
pass
|
||||
|
||||
def comicPageLink(self, comic, url, prevUrl):
|
||||
"""Emit an event to inform the handler about links between comic pages. Should be overridden in subclass."""
|
||||
pass
|
||||
|
||||
def end(self):
|
||||
"""Emit an end event. Should be overridden in subclass."""
|
||||
pass
|
||||
|
@ -216,6 +220,11 @@ class MultiHandler(object):
|
|||
for handler in _handlers:
|
||||
handler.comicDownloaded(comic, filename)
|
||||
|
||||
def comicPageLink(self, comic, url, prevUrl):
|
||||
"""Emit an event to inform the handler about links between comic pages. Should be overridden in subclass."""
|
||||
for handler in _handlers:
|
||||
handler.comicPageLink(comic, url, prevUrl)
|
||||
|
||||
def end(self):
|
||||
"""Emit an end event. Should be overridden in subclass."""
|
||||
for handler in _handlers:
|
||||
|
|
|
@ -7,6 +7,7 @@ from . import loader
|
|||
from .util import fetchUrl, fetchUrls, getPageContent
|
||||
from .comic import ComicStrip
|
||||
from .output import out
|
||||
from .events import getHandler
|
||||
|
||||
|
||||
class _BasicScraper(object):
|
||||
|
@ -161,6 +162,7 @@ class _BasicScraper(object):
|
|||
else:
|
||||
prevUrl = self.prevUrlModifier(prevUrl)
|
||||
out.debug("Matched previous URL %s" % prevUrl)
|
||||
getHandler().comicPageLink(self.getName(), url, prevUrl)
|
||||
return prevUrl
|
||||
|
||||
def getIndexStripUrl(self, index):
|
||||
|
|
Loading…
Reference in a new issue