Always have an url attribute in comic scrapers.
This commit is contained in:
parent
18995dc8fc
commit
7f78bea1af
44 changed files with 602 additions and 588 deletions
|
@ -9,40 +9,40 @@ from ..helpers import regexNamer, bounceStarter, indirectStarter
|
|||
|
||||
|
||||
class ALessonIsLearned(_BasicScraper):
|
||||
baseUrl = 'http://www.alessonislearned.com/'
|
||||
url = 'http://www.alessonislearned.com/'
|
||||
prevSearch = compile(tagre("a", "href", r"(index\.php\?comic=\d+)", quote="'")+r"[^>]+previous")
|
||||
starter = indirectStarter(baseUrl, prevSearch)
|
||||
stripUrl = baseUrl + 'index.php?comic=%s'
|
||||
starter = indirectStarter(url, prevSearch)
|
||||
stripUrl = url + 'index.php?comic=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(cmx/lesson\d+\.[a-z]+)"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class ASofterWorld(_BasicScraper):
|
||||
latestUrl = 'http://www.asofterworld.com/'
|
||||
stripUrl = latestUrl + 'index.php?id=%s'
|
||||
url = 'http://www.asofterworld.com/'
|
||||
stripUrl = url + 'index.php?id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.asofterworld\.com/clean/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", "(index\.php\?id=\d+)")+'< back')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class AbleAndBaker(_BasicScraper):
|
||||
latestUrl = 'http://www.jimburgessdesign.com/comics/index.php'
|
||||
stripUrl = latestUrl + '?comic=%s'
|
||||
url = 'http://www.jimburgessdesign.com/comics/index.php'
|
||||
stripUrl = url + '?comic=%s'
|
||||
imageSearch = compile(tagre('img', 'src', r'(comics/.+)'))
|
||||
prevSearch = compile(tagre('a', 'href', r'(.+\d+)') + '.+?previous.gif')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class AbominableCharlesChristopher(_BasicScraper):
|
||||
latestUrl = 'http://www.abominable.cc/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.abominable.cc/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.abominable\.cc/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)')+"[^<]+Previous")
|
||||
help = 'Index format: yyyy/mm/dd/comicname'
|
||||
|
||||
|
||||
class AbsurdNotions(_BasicScraper):
|
||||
latestUrl = 'http://www.absurdnotions.org/page129.html'
|
||||
url = 'http://www.absurdnotions.org/page129.html'
|
||||
stripUrl = 'http://www.absurdnotions.org/page%s.html'
|
||||
imageSearch = compile(tagre('img', 'src', r'(an[^"]+)'))
|
||||
multipleImagesPerStrip = True
|
||||
|
@ -51,9 +51,10 @@ class AbsurdNotions(_BasicScraper):
|
|||
|
||||
|
||||
class AbstruseGoose(_BasicScraper):
|
||||
starter = bounceStarter('http://abstrusegoose.com/',
|
||||
url = 'http://abstrusegoose.com/'
|
||||
starter = bounceStarter(url,
|
||||
compile(tagre('a', 'href', r'(http://abstrusegoose\.com/\d+)')+"Next »</a>"))
|
||||
stripUrl = 'http://abstrusegoose.com/%s'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre('img', 'src', r'(http://abstrusegoose\.com/strips/[^<>"]+)'))
|
||||
prevSearch = compile(tagre('a', 'href', r'(http://abstrusegoose\.com/\d+)') + r'« Previous</a>')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
@ -66,71 +67,70 @@ class AbstruseGoose(_BasicScraper):
|
|||
|
||||
|
||||
class AcademyVale(_BasicScraper):
|
||||
latestUrl = 'http://www.imagerie.com/vale/'
|
||||
stripUrl = latestUrl + 'avarch.cgi?%s'
|
||||
url = 'http://www.imagerie.com/vale/'
|
||||
stripUrl = url + 'avarch.cgi?%s'
|
||||
imageSearch = compile(tagre('img', 'src', r'(avale\d{4}-\d{2}\.gif)'))
|
||||
prevSearch = compile(tagre('a', 'href', r'(avarch[^">]+)', quote="") + tagre('img', 'src', 'AVNavBack\.gif'))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class Alice(_BasicScraper):
|
||||
latestUrl = 'http://alice.alicecomics.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://alice.alicecomics.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://alice\.alicecomics\.com/wp-content/webcomic/alicecomics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://alice\.alicecomics\.com/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: name'
|
||||
|
||||
|
||||
class AlienLovesPredator(_BasicScraper):
|
||||
latestUrl = 'http://alienlovespredator.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://alienlovespredator.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+)', after='border="1" alt="" width="750"'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/name/'
|
||||
|
||||
|
||||
class Altermeta(_BasicScraper):
|
||||
latestUrl = 'http://altermeta.net/'
|
||||
stripUrl = latestUrl + 'archive.php?comic=%s'
|
||||
url = 'http://altermeta.net/'
|
||||
stripUrl = url + 'archive.php?comic=%s'
|
||||
imageSearch = compile(r'<img src="(comics/[^"]+)" />')
|
||||
prevSearch = compile(r'<a href="([^"]+)"><img src="http://altermeta\.net/template/default/images/sasha/back\.png')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class AltermetaOld(Altermeta):
|
||||
name = 'Altermeta/Old'
|
||||
latestUrl = 'http://altermeta.net/oldarchive/index.php'
|
||||
url = 'http://altermeta.net/oldarchive/index.php'
|
||||
stripUrl = 'http://altermeta.net/oldarchive/archive.php?comic=%s'
|
||||
prevSearch = compile(r'<a href="([^"]+)">Back')
|
||||
|
||||
|
||||
class AmazingSuperPowers(_BasicScraper):
|
||||
latestUrl = 'http://www.amazingsuperpowers.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.amazingsuperpowers.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.amazingsuperpowers\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.amazingsuperpowers\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/name'
|
||||
|
||||
|
||||
class Angels2200(_BasicScraper):
|
||||
latestUrl = 'http://www.janahoffmann.com/angels/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.janahoffmann.com/angels/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(http://www\.janahoffmann\.com/angels/comics/[^']+)", quote="'"))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)')+"« Previous")
|
||||
help = 'Index format: yyyy/mm/dd/part-<n>-comic-<n>'
|
||||
|
||||
|
||||
class AppleGeeks(_BasicScraper):
|
||||
latestUrl = 'http://www.applegeeks.com/'
|
||||
stripUrl = latestUrl + 'comics/viewcomic.php?issue=%s'
|
||||
url = 'http://www.applegeeks.com/'
|
||||
stripUrl = url + 'comics/viewcomic.php?issue=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'((?:/comics/)?issue\d+\.jpg)'))
|
||||
prevSearch = compile(r'<div class="caption">Previous Comic</div>\s*<p><a href="([^"]+)">', MULTILINE)
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class Achewood(_BasicScraper):
|
||||
latestUrl = 'http://www.achewood.com/'
|
||||
stripUrl = latestUrl + 'index.php?date=%s'
|
||||
url = 'http://www.achewood.com/'
|
||||
stripUrl = url + 'index.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comic\.php\?date=\d+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(index\.php\?date=\d+)', after="Previous"))
|
||||
help = 'Index format: mmddyyyy'
|
||||
|
@ -138,8 +138,8 @@ class Achewood(_BasicScraper):
|
|||
|
||||
|
||||
class AstronomyPOTD(_BasicScraper):
|
||||
starter = bounceStarter(
|
||||
'http://antwrp.gsfc.nasa.gov/apod/astropix.html',
|
||||
url = 'http://antwrp.gsfc.nasa.gov/apod/astropix.html'
|
||||
starter = bounceStarter(url,
|
||||
compile(r'<a href="(ap\d{6}\.html)">></a>'))
|
||||
stripUrl = 'http://antwrp.gsfc.nasa.gov/apod/ap%s.html'
|
||||
imageSearch = compile(r'<a href="(image/\d{4}/[^"]+)"')
|
||||
|
@ -154,7 +154,7 @@ class AstronomyPOTD(_BasicScraper):
|
|||
|
||||
|
||||
class AfterStrife(_BasicScraper):
|
||||
latestUrl = 'http://afterstrife.com/?p=262'
|
||||
url = 'http://afterstrife.com/?p=262'
|
||||
stripUrl = 'http://afterstrife.com/?p=%s'
|
||||
imageSearch = compile(r'<img src="(http://afterstrife.com/strips/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)" class="navi navi-prev"')
|
||||
|
@ -162,88 +162,89 @@ class AfterStrife(_BasicScraper):
|
|||
|
||||
|
||||
class ALLCAPS(_BasicScraper):
|
||||
latestUrl = 'http://www.allcapscomix.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.allcapscomix.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.allcapscomix\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)')+r"[^<]+Previous</a>")
|
||||
help = 'Index format: yyyy/mm/strip-name'
|
||||
|
||||
|
||||
class ASkeweredParadise(_BasicScraper):
|
||||
latestUrl = 'http://aspcomics.net/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://aspcomics.net/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://aspcomics\.net/sites/default/files[^"]*/asp\d+\.jpg)[^"]+'))
|
||||
prevSearch = compile(tagre("a", "href", "(/comic/\d+)")+r"[^>]+Previous")
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class AGirlAndHerFed(_BasicScraper):
|
||||
starter = bounceStarter('http://www.agirlandherfed.com/',
|
||||
url = 'http://www.agirlandherfed.com/'
|
||||
starter = bounceStarter(url,
|
||||
compile(r'<a href="([^"]+)">[^>]+Back'))
|
||||
stripUrl = 'http://www.agirlandherfed.com/1.%s.html'
|
||||
stripUrl = url + '1.%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(img/strip/[^"]+\.jpg)'))
|
||||
prevSearch = compile(r'<a href="([^"]+)">[^>]+Back')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class AetheriaEpics(_BasicScraper):
|
||||
latestUrl = 'http://aetheria-epics.schala.net/'
|
||||
stripUrl = latestUrl + '%s.html'
|
||||
url = 'http://aetheria-epics.schala.net/'
|
||||
stripUrl = url + '%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(\d{5}\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\d{5}\.html)') + "Previous")
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class AirForceBlues(_BasicScraper):
|
||||
latestUrl = 'http://www.afblues.com/'
|
||||
stripUrl = latestUrl + 'wordpress/%s'
|
||||
url = 'http://www.afblues.com/'
|
||||
stripUrl = url + 'wordpress/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.afblues\.com/wordpress/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after='Previous'))
|
||||
help = 'Index format: yyyy/mm/dd/name/'
|
||||
|
||||
|
||||
class AlienShores(_BasicScraper):
|
||||
latestUrl = 'http://alienshores.com/alienshores_band/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://alienshores.com/alienshores_band/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://alienshores\.com/alienshores_band/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://alienshores\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/p<nn>/'
|
||||
|
||||
|
||||
class AllTheGrowingThings(_BasicScraper):
|
||||
latestUrl = 'http://growingthings.typodmary.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://growingthings.typodmary.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://growingthings\.typodmary\.com/files/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://growingthings\.typodmary\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class Amya(_BasicScraper):
|
||||
latestUrl = 'http://www.amyachronicles.com/'
|
||||
stripUrl = latestUrl + 'archives/%s'
|
||||
url = 'http://www.amyachronicles.com/'
|
||||
stripUrl = url + 'archives/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.amyachronicles\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.amyachronicles\.com/archives/\d+)', after="Previous"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class Angband(_BasicScraper):
|
||||
latestUrl = 'http://angband.calamarain.net/'
|
||||
stripUrl = latestUrl + 'view.php?date=%s'
|
||||
url = 'http://angband.calamarain.net/'
|
||||
stripUrl = url + 'view.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(comics/Scroll[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(view\.php\?date\=[^"]+)')+"Previous")
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class AlsoBagels(_BasicScraper):
|
||||
latestUrl = 'http://alsobagels.com/'
|
||||
stripUrl = latestUrl + 'index.php/comic/%s/'
|
||||
url = 'http://alsobagels.com/'
|
||||
stripUrl = url + 'index.php/comic/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://alsobagels\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://alsobagels\.com/index\.php/comic/[^"]+)', after="Previous"))
|
||||
help = 'Index format: strip-name'
|
||||
|
||||
|
||||
class Annyseed(_BasicScraper):
|
||||
latestUrl = 'http://www.colourofivy.com/annyseed_webcomic_latest.htm'
|
||||
url = 'http://www.colourofivy.com/annyseed_webcomic_latest.htm'
|
||||
stripUrl = 'http://www.colourofivy.com/annyseed_webcomic%s.htm'
|
||||
imageSearch = compile(tagre("img", "src", r'(Annyseed[^"]+)'))
|
||||
prevSearch = compile(r'<a href="(http://www\.colourofivy\.com/[^"]+)"><img src="Last.gif"')
|
||||
|
|
|
@ -12,13 +12,13 @@ _imageSearch = compile(tagre("a", "href", r'(/newspics/[^"]+)', after='zoom'))
|
|||
_prevSearch = compile(tagre("a", "href", r'(/[^"]+)', before='prev'))
|
||||
|
||||
def add(name, shortname):
|
||||
latestUrl = 'http://www.arcamax.com%s' % shortname
|
||||
url = 'http://www.arcamax.com%s' % shortname
|
||||
classname = 'Arcamax_%s' % name
|
||||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='Arcamax/' + name,
|
||||
latestUrl = latestUrl,
|
||||
stripUrl = latestUrl + '%s/',
|
||||
url = url,
|
||||
stripUrl = url + '%s/',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
help = 'Index format: none',
|
||||
|
|
|
@ -10,56 +10,56 @@ from ..helpers import indirectStarter
|
|||
|
||||
|
||||
class Bardsworth(_BasicScraper):
|
||||
latestUrl = 'http://www.bardsworth.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.bardsworth.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.bardsworth\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.bardsworth\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class BetterDays(_BasicScraper):
|
||||
latestUrl = 'http://jaynaylor.com/betterdays/'
|
||||
stripUrl = latestUrl + 'archives/%s.html'
|
||||
url = 'http://jaynaylor.com/betterdays/'
|
||||
stripUrl = url + 'archives/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/betterdays/comic/[^>]+)', quote=""))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + '« Previous')
|
||||
help = 'Index format: yyyy/mm/<your guess>'
|
||||
|
||||
|
||||
class BiggerThanCheeses(_BasicScraper):
|
||||
latestUrl = 'http://www.biggercheese.com/'
|
||||
stripUrl = latestUrl + 'index.php?comic=%s'
|
||||
url = 'http://www.biggercheese.com/'
|
||||
stripUrl = url + 'index.php?comic=%s'
|
||||
imageSearch = compile(r'src="(comics/.+?)" alt')
|
||||
prevSearch = compile(r'"(index.php\?comic=.+?)".+?_back')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class BizarreUprising(_BasicScraper):
|
||||
latestUrl = 'http://www.bizarreuprising.com/'
|
||||
stripUrl = latestUrl + 'view/%s'
|
||||
url = 'http://www.bizarreuprising.com/'
|
||||
stripUrl = url + 'view/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(comic/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(view/\d+/[^"]+)') + tagre("img", "src", r'images/b_prev\.gif'))
|
||||
help = 'Index format: n/name'
|
||||
|
||||
|
||||
class Blip(_BasicScraper):
|
||||
latestUrl = 'http://blipcomic.com/'
|
||||
stripUrl = latestUrl + 'index.php?strip_id=%s'
|
||||
url = 'http://blipcomic.com/'
|
||||
stripUrl = url + 'index.php?strip_id=%s'
|
||||
imageSearch = compile(r'(istrip_files/strips/.+?)"')
|
||||
prevSearch = compile(r'First.+?"(index.php\?strip_id=.+?)".+?prev')
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class BlueCrashKit(_BasicScraper):
|
||||
latestUrl = 'http://www.bluecrashkit.com/cheese/'
|
||||
stripUrl = latestUrl + 'node/%s'
|
||||
url = 'http://www.bluecrashkit.com/cheese/'
|
||||
stripUrl = url + 'node/%s'
|
||||
imageSearch = compile(r'(/cheese/files/comics/.+?)"')
|
||||
prevSearch = compile(r'(/cheese/node/.+?)".+?previous')
|
||||
help = 'Index format: non'
|
||||
|
||||
|
||||
class BMovieComic(_BasicScraper):
|
||||
latestUrl = 'http://www.bmoviecomic.com/'
|
||||
stripUrl = latestUrl + '?cid=%s'
|
||||
url = 'http://www.bmoviecomic.com/'
|
||||
stripUrl = url + '?cid=%s'
|
||||
imageSearch = compile(r'"(comics/.+?)"')
|
||||
prevSearch = compile(r'(\?cid=.+?)".+?Prev')
|
||||
help = 'Index format: n'
|
||||
|
@ -70,33 +70,33 @@ class BMovieComic(_BasicScraper):
|
|||
### mainline -c BratHalla:360-backup-dad-unstable-plans/
|
||||
### to get earlier comics
|
||||
class BratHalla(_BasicScraper):
|
||||
latestUrl = 'http://brat-halla.com/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://brat-halla.com/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(r"(/comics/.+?)' target='_blank")
|
||||
prevSearch = compile(r'headernav2".+?"(http.+?)"')
|
||||
help = 'Index format: non'
|
||||
|
||||
|
||||
class Brink(_BasicScraper):
|
||||
latestUrl = 'http://paperfangs.com/brink/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://paperfangs.com/brink/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://paperfangs\.com/brink/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://paperfangs\.com/brink/[^"]+)', after="prev"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class BoredAndEvil(_BasicScraper):
|
||||
baseUrl = 'http://www.boredandevil.com/'
|
||||
stripUrl = baseUrl + '?date=%s'
|
||||
url = 'http://www.boredandevil.com/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(strips/[^"]+)'))
|
||||
prevSearch = compile(r'First Comic.+<a href="(.+?)".+previous-on.gif')
|
||||
starter = indirectStarter(baseUrl, prevSearch)
|
||||
starter = indirectStarter(url, prevSearch)
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class BoyOnAStickAndSlither(_BasicScraper):
|
||||
latestUrl = 'http://www.boasas.com/'
|
||||
stripUrl = latestUrl + 'page/%s'
|
||||
url = 'http://www.boasas.com/'
|
||||
stripUrl = url + 'page/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://\d+\.media\.tumblr\.com/[^"]+_1280\.png)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/page/\d+)') + "<span>Next page")
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
@ -107,40 +107,40 @@ class BoyOnAStickAndSlither(_BasicScraper):
|
|||
|
||||
|
||||
class ButternutSquash(_BasicScraper):
|
||||
latestUrl = 'http://www.butternutsquash.net/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.butternutsquash.net/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.butternutsquash\.net/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.butternutsquash\.net/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/strip-name-author-name'
|
||||
|
||||
|
||||
class BlankIt(_BasicScraper):
|
||||
latestUrl = 'http://blankitcomics.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://blankitcomics.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://blankitcomics\.com/bicomics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after='rel="prev"'))
|
||||
help = 'Index format: yyyy/mm/dd/name'
|
||||
|
||||
|
||||
class BobWhite(_BasicScraper):
|
||||
latestUrl = 'http://www.bobwhitecomics.com/'
|
||||
stripUrl = latestUrl + '?webcomic_post=%s'
|
||||
url = 'http://www.bobwhitecomics.com/'
|
||||
stripUrl = url + '?webcomic_post=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(http://www\.bobwhitecomics\.com/wp/wp-content/webcomic/untitled/\d+.jpg)"))
|
||||
prevSearch = compile(tagre("a", "href", "(http://www\.bobwhitecomics\.com/\?webcomic_post=\d+)")+r'[^"]+Previous')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class BigFatWhale(_BasicScraper):
|
||||
latestUrl = 'http://www.bigfatwhale.com/'
|
||||
stripUrl = latestUrl + 'archives/bfw_%s.htm'
|
||||
url = 'http://www.bigfatwhale.com/'
|
||||
stripUrl = url + 'archives/bfw_%s.htm'
|
||||
imageSearch = compile(tagre("img", "src", r'(archives/bfw_[^"]+|bfw_[^"]+)'))
|
||||
prevSearch = compile(r' HREF="(.+?)" TARGET="_top" TITLE="Previous Cartoon"')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class BadassMuthas(_BasicScraper):
|
||||
latestUrl = 'http://badassmuthas.com/pages/comic.php'
|
||||
stripUrl = latestUrl + '?%s'
|
||||
url = 'http://badassmuthas.com/pages/comic.php'
|
||||
stripUrl = url + '?%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/images/comicsissue[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + tagre("img", "src", r'/images/comicsbuttonBack\.gif'))
|
||||
help = 'Index format: nnn'
|
||||
|
@ -148,7 +148,7 @@ class BadassMuthas(_BasicScraper):
|
|||
|
||||
class BrightlyWound(_BasicScraper):
|
||||
baseUrl = 'http://www.brightlywound.com/'
|
||||
latestUrl = baseUrl + '?comic=137'
|
||||
url = baseUrl + '?comic=137'
|
||||
stripUrl = baseUrl + '?comic=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(comic/[^']+)", quote="'"))
|
||||
prevSearch = compile(r'<div id=\'navback\'><a href=\'(\?comic\=\d+)\'><img src=\'images/previous.png\'')
|
||||
|
@ -156,39 +156,39 @@ class BrightlyWound(_BasicScraper):
|
|||
|
||||
|
||||
class BlueCrashKit(_BasicScraper):
|
||||
latestUrl = 'http://robhamm.com/bluecrashkit/'
|
||||
stripUrl = latestUrl + 'comics/blue-crash-kit/%s'
|
||||
url = 'http://robhamm.com/bluecrashkit/'
|
||||
stripUrl = url + 'comics/blue-crash-kit/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://robhamm\.com/bluecrashkit/sites/default/files/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<li class="previous"><a href="([^"]+)">')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class BloodBound(_BasicScraper):
|
||||
latestUrl = 'http://bloodboundcomic.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://bloodboundcomic.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://bloodboundcomic\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://bloodboundcomic\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/name'
|
||||
|
||||
|
||||
class BookOfBiff(_BasicScraper):
|
||||
latestUrl = 'http://www.thebookofbiff.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.thebookofbiff.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="Previous"))
|
||||
help = 'Index format: yyyy/mm/dd/stripnum-strip-name'
|
||||
|
||||
|
||||
class BillyTheDunce(_BasicScraper):
|
||||
latestUrl = 'http://www.duncepress.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.duncepress.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.duncepress\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="(http://www.duncepress.com/[^"]+)" rel="prev">')
|
||||
help = 'Index format: yyyy/mm/strip-name'
|
||||
|
||||
|
||||
class BackwaterPlanet(_BasicScraper):
|
||||
latestUrl = 'http://www.backwaterplanet.com/current.htm'
|
||||
url = 'http://www.backwaterplanet.com/current.htm'
|
||||
stripUrl = 'http://www.backwaterplanet.com/archive/bwp%s.htm'
|
||||
imageSearch = compile(r'<img src="(/images/comic/bwp.+?)">')
|
||||
prevSearch = compile(r'<a href="(/archive/bwp.+?)"><img src="(images/Previous.jpg|/images/Previous.jpg)"')
|
||||
|
@ -196,16 +196,16 @@ class BackwaterPlanet(_BasicScraper):
|
|||
|
||||
|
||||
class Baroquen(_BasicScraper):
|
||||
latestUrl = 'http://www.baroquencomics.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.baroquencomics.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.baroquencomics\.com/Comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.baroquencomics\.com/[^"]+)', after='prev'))
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class BetweenFailures(_BasicScraper):
|
||||
latestUrl = 'http://betweenfailures.com/'
|
||||
stripUrl = latestUrl + 'archives/archive/%s'
|
||||
url = 'http://betweenfailures.com/'
|
||||
stripUrl = url + 'archives/archive/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://betweenfailures\.com/wp-content/webcomic/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://betweenfailures\.com/archives/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: stripnum-strip-name'
|
||||
|
|
|
@ -10,8 +10,8 @@ from ..util import tagre
|
|||
|
||||
|
||||
class CaptainSNES(_BasicScraper):
|
||||
latestUrl = 'http://www.captainsnes.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.captainsnes.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(r"<img src='(http://www\.captainsnes\.com/comics/[^']+)'")
|
||||
prevSearch = compile(r'<a href="(http://www\.captainsnes\.com/[^"]+)"><span class="prev">')
|
||||
multipleImagesPerStrip = True
|
||||
|
@ -19,8 +19,8 @@ class CaptainSNES(_BasicScraper):
|
|||
|
||||
|
||||
class CaseyAndAndy(_BasicScraper):
|
||||
latestUrl = 'http://www.galactanet.com/comic/'
|
||||
stripUrl = latestUrl + 'view.php?strip=%s'
|
||||
url = 'http://www.galactanet.com/comic/'
|
||||
stripUrl = url + 'view.php?strip=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(Strip\d+\.gif)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(view\.php\?strip=\d+)')
|
||||
+ tagre("img", "src", r'previous\.gif'))
|
||||
|
@ -28,8 +28,8 @@ class CaseyAndAndy(_BasicScraper):
|
|||
|
||||
|
||||
class CaribbeanBlue(_BasicScraper):
|
||||
latestUrl = 'http://cblue.katbox.net/'
|
||||
stripUrl = latestUrl + 'archive/%s'
|
||||
url = 'http://cblue.katbox.net/'
|
||||
stripUrl = url + 'archive/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cblue\.katbox\.net/wp-content/webcomic/cblue/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://cblue\.katbox\.net/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: nnn-stripname'
|
||||
|
@ -37,7 +37,7 @@ class CaribbeanBlue(_BasicScraper):
|
|||
|
||||
class Catalyst(_BasicScraper):
|
||||
baseUrl = "http://catalyst.spiderforest.com/"
|
||||
latestUrl = baseUrl + "comic.php?comic_id=415"
|
||||
url = baseUrl + "comic.php?comic_id=415"
|
||||
stripUrl = baseUrl + "comic.php?comic_id=%s"
|
||||
imageSearch = compile(tagre("img", "src", r'(http://catalyst\.spiderforest\.com/comics/[^"]+)'))
|
||||
prevSearch = compile("<center>" + tagre("a", "href", r'(http://catalyst\.spiderforest\.com/comic\.php\?comic_id=\d+)'))
|
||||
|
@ -45,47 +45,47 @@ class Catalyst(_BasicScraper):
|
|||
|
||||
|
||||
class Catena(_BasicScraper):
|
||||
latestUrl = 'http://catenamanor.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://catenamanor.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://catenamanor\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after='rel="prev"'))
|
||||
help = 'Index format: yyyy/mm/dd/<name>'
|
||||
|
||||
|
||||
class ChasingTheSunset(_BasicScraper):
|
||||
latestUrl = 'http://www.fantasycomic.com/'
|
||||
stripUrl = latestUrl + 'index.php?p=c%s'
|
||||
url = 'http://www.fantasycomic.com/'
|
||||
stripUrl = url + 'index.php?p=c%s'
|
||||
imageSearch = compile(r'(/cmsimg/.+?)".+?comic-img')
|
||||
prevSearch = compile(r'<a href="(.+?)" title="" ><img src="(images/eye-prev.png|images/cn-prev.png)"')
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class CheckerboardNightmare(_BasicScraper):
|
||||
latestUrl = 'http://www.checkerboardnightmare.com/'
|
||||
stripUrl = latestUrl + 'd/%s.shtml'
|
||||
url = 'http://www.checkerboardnightmare.com/'
|
||||
stripUrl = url + 'd/%s.shtml'
|
||||
imageSearch=compile(tagre("img", "src", r'(/comic[s|/][^"]+)'))
|
||||
prevSearch=compile(tagre("a", "href", r'[^"]*(/d/\d+\.s?html)')+r"[^>]+/images/(?:nav_02|previous_day)\.gif")
|
||||
help='Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Chisuji(_BasicScraper):
|
||||
latestUrl = 'http://www.chisuji.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.chisuji.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'<img src="(http://www.chisuji.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="(http://www.chisuji.com/.+?)">')
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class ChugworthAcademy(_BasicScraper):
|
||||
latestUrl = 'http://chugworth.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://chugworth.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r'<img src="(.+?)" alt="Comic')
|
||||
prevSearch = compile(r'<a href="(http://chugworth.com/\?p=\d{1,4})"[^>]+?title="Previous">')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class ChugworthAcademyArchive(_BasicScraper):
|
||||
latestUrl = 'http://chugworth.com/archive/?strip_id=422'
|
||||
url = 'http://chugworth.com/archive/?strip_id=422'
|
||||
stripUrl = 'http://chugworth.com/archive/?strip_id=%s'
|
||||
imageSearch = compile(r'<img src=(comics/\d+.+?.\w{1,4})')
|
||||
prevSearch = compile(r'<a href=\'(.+?)\'><img src=\'images/previous.gif')
|
||||
|
@ -93,64 +93,64 @@ class ChugworthAcademyArchive(_BasicScraper):
|
|||
|
||||
|
||||
class CigarroAndCerveja(_BasicScraper):
|
||||
latestUrl = 'http://www.cigarro.ca/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.cigarro.ca/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r"(/comics/.+?)'")
|
||||
prevSearch = compile(r'(/\?p=.+?)">&laq')
|
||||
help = 'Index format: non'
|
||||
|
||||
|
||||
class Comedity(_BasicScraper):
|
||||
latestUrl = 'http://www.comedity.com/'
|
||||
stripUrl = latestUrl + 'index.php?strip_id=%s'
|
||||
url = 'http://www.comedity.com/'
|
||||
stripUrl = url + 'index.php?strip_id=%s'
|
||||
imageSearch = compile(r'<img src="(Comedity_files/.+?)"')
|
||||
prevSearch = compile(r'<a href="(/?index.php\?strip_id=\d+?)"> *<img alt=\"Prior Strip')
|
||||
help = 'Index format: n (no padding)'
|
||||
|
||||
|
||||
class Commissioned(_BasicScraper):
|
||||
latestUrl = 'http://www.commissionedcomic.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.commissionedcomic.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.commissionedcomic\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.commissionedcomic\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class Concession(_BasicScraper):
|
||||
latestUrl = 'http://concessioncomic.com/'
|
||||
stripUrl = latestUrl + 'index.php?pid=%s'
|
||||
url = 'http://concessioncomic.com/'
|
||||
stripUrl = url + 'index.php?pid=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://concessioncomic\.com/comics/[^"]+)', after="Comic"))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://concessioncomic\.com/index\.php\?pid=\d+)', after="nav-prev"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class CoolCatStudio(_BasicScraper):
|
||||
latestUrl = 'http://www.coolcatstudio.com/'
|
||||
stripUrl = latestUrl + 'strips-cat/ccs%s'
|
||||
url = 'http://www.coolcatstudio.com/'
|
||||
stripUrl = url + 'strips-cat/ccs%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.coolcatstudio\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.coolcatstudio\.com/strips-cat/[^"]+)', before="prev"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class CourtingDisaster(_BasicScraper):
|
||||
latestUrl = 'http://www.courting-disaster.com/'
|
||||
stripUrl = latestUrl + 'archive/%s.html'
|
||||
url = 'http://www.courting-disaster.com/'
|
||||
stripUrl = url + 'archive/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archive/\d+\.html)') + tagre("img", "src", r'/images/previous\.gif'))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class CrapIDrewOnMyLunchBreak(_BasicScraper):
|
||||
latestUrl = 'http://crap.jinwicked.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://crap.jinwicked.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://crap\.jinwicked\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/name'
|
||||
|
||||
|
||||
class CtrlAltDel(_BasicScraper):
|
||||
latestUrl = 'http://www.cad-comic.com/cad/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.cad-comic.com/cad/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://v\.cdn\.cad-comic\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="nav-back"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
@ -158,30 +158,30 @@ class CtrlAltDel(_BasicScraper):
|
|||
|
||||
class CtrlAltDelSillies(CtrlAltDel):
|
||||
name = 'CtrlAltDel/Sillies'
|
||||
latestUrl = 'http://www.cad-comic.com/sillies/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.cad-comic.com/sillies/'
|
||||
stripUrl = url + '%s'
|
||||
|
||||
|
||||
class Curvy(_BasicScraper):
|
||||
latestUrl = 'http://www.c.urvy.org/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.c.urvy.org/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/c/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/\?date=\d+)') + tagre("img", "src", "/nav/prev\.png"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class CatAndGirl(_BasicScraper):
|
||||
latestUrl = 'http://catandgirl.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://catandgirl.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://catandgirl\.com/archive/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)')+r"[^<]+Previous</a>")
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class CyanideAndHappiness(_BasicScraper):
|
||||
_latestUrl = 'http://www.explosm.net/comics/'
|
||||
starter = bounceStarter(_latestUrl, compile(tagre("a", "href", r"(/comics/\d+/)", before="next")))
|
||||
stripUrl = _latestUrl + '%s/'
|
||||
url = 'http://www.explosm.net/comics/'
|
||||
starter = bounceStarter(url, compile(tagre("a", "href", r"(/comics/\d+/)", before="next")))
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://(?:www\.)?explosm\.net/db/files/[^"]+)', before="a daily webcomic"))
|
||||
prevSearch = compile(tagre("a", "href", r'(/comics/\d+/)', before="prev"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
@ -194,48 +194,48 @@ class CyanideAndHappiness(_BasicScraper):
|
|||
|
||||
|
||||
class CrimsonDark(_BasicScraper):
|
||||
latestUrl = 'http://www.davidcsimon.com/crimsondark/'
|
||||
stripUrl = latestUrl + 'index.php?view=comic&strip_id=%s'
|
||||
url = 'http://www.davidcsimon.com/crimsondark/'
|
||||
stripUrl = url + 'index.php?view=comic&strip_id=%s'
|
||||
imageSearch = compile(r'src="(.+?strips/.+?)"')
|
||||
prevSearch = compile(r'<a href=[\'"](/crimsondark/index\.php\?view=comic&strip_id=\d+)[\'"]><img src=[\'"]themes/cdtheme/images/active_prev.png[\'"]')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class CatsAndCameras(_BasicScraper):
|
||||
latestUrl = 'http://catsncameras.com/cnc/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://catsncameras.com/cnc/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r'<img src="(http://catsncameras.com/cnc/comics/.+?)"')
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="(http://catsncameras.com/cnc/.+?)">')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class CowboyJedi(_BasicScraper):
|
||||
latestUrl = 'http://www.cowboyjedi.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.cowboyjedi.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.cowboyjedi.\com/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<a href="(http://www.cowboyjedi.com/.+?)" class="navi navi-prev"')
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class CasuallyKayla(_BasicScraper):
|
||||
latestUrl = 'http://casuallykayla.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://casuallykayla.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://casuallykayla\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("div", "class", r'nav-previous') + tagre("a", "href", r'([^"]+)'))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class Collar6(_BasicScraper):
|
||||
latestUrl = 'http://collar6.com/'
|
||||
stripUrl = latestUrl + 'archive/%s'
|
||||
url = 'http://collar6.com/'
|
||||
stripUrl = url + 'archive/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://collar6\.com/wp-content/webcomic/collar6/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://collar6\.com/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: <name>'
|
||||
|
||||
|
||||
class Chester5000XYV(_BasicScraper):
|
||||
latestUrl = 'http://jessfink.com/Chester5000XYV/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://jessfink.com/Chester5000XYV/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://jessfink\.com/Chester5000XYV/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<a href="(.+?)"><span class="prev">')
|
||||
help = 'Index format: nnn'
|
||||
|
@ -243,7 +243,7 @@ class Chester5000XYV(_BasicScraper):
|
|||
|
||||
class Champ2010(_BasicScraper):
|
||||
# the latest URL is hard coded since the comic is discontinued
|
||||
latestUrl = 'http://jedcollins.com/champ2010/champ-12-30-10.html'
|
||||
url = 'http://jedcollins.com/champ2010/champ-12-30-10.html'
|
||||
stripUrl = 'http://jedcollins.com/champ2010/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://jedcollins\.com/champ2010/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://jedcollins\.com/champ2010/[^"]+)', after="Previous"))
|
||||
|
@ -251,24 +251,25 @@ class Champ2010(_BasicScraper):
|
|||
|
||||
|
||||
class Chucklebrain(_BasicScraper):
|
||||
latestUrl = 'http://www.chucklebrain.com/main.php'
|
||||
stripUrl = latestUrl + '?img=%s'
|
||||
url = 'http://www.chucklebrain.com/main.php'
|
||||
stripUrl = url + '?img=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/images/strip[^"]+)'))
|
||||
prevSearch = compile(r'<a href=\'(/main.php\?img\=\d+)\'><img src=\'/images/previous.jpg\'')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class CompanyY(_BasicScraper):
|
||||
latestUrl = 'http://company-y.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://company-y.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://company-y\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="(http://company-y.com/.+?)"')
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class CorydonCafe(_BasicScraper):
|
||||
starter = bounceStarter('http://corydoncafe.com/', compile(tagre("a", "href", r"(http://corydoncafe\.com/\d+/[^']+)", after="next", quote="'")))
|
||||
stripUrl = 'http://corydoncafe.com/%s.php'
|
||||
url = 'http://corydoncafe.com/'
|
||||
starter = bounceStarter(url, compile(tagre("a", "href", r"(http://corydoncafe\.com/\d+/[^']+)", after="next", quote="'")))
|
||||
stripUrl = url + '%s.php'
|
||||
imageSearch = compile(tagre("img", "src", r"(\./[^']+)", quote="'"))
|
||||
prevSearch = compile(tagre("a", "href", r"(http://corydoncafe\.com/\d+/[^']+)", after="prev", quote="'"))
|
||||
help = 'Index format: yyyy/stripname'
|
||||
|
@ -279,7 +280,7 @@ class CorydonCafe(_BasicScraper):
|
|||
|
||||
|
||||
class CraftedFables(_BasicScraper):
|
||||
latestUrl = 'http://www.craftedfables.com/'
|
||||
url = 'http://www.craftedfables.com/'
|
||||
stripUrl = 'http://www.caf-fiends.net/craftedfables/?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.caf-fiends\.net/craftedfables/comics/[^"]+)'))
|
||||
prevSearch = compile(r'<a href="(http://www.caf-fiends.net/craftedfables/.+?)"><span class="prev">')
|
||||
|
|
|
@ -48,7 +48,7 @@ def add(name, shortName, imageFolder=None, lastStrip=None):
|
|||
if lastStrip is None:
|
||||
attrs['starter'] = _starter
|
||||
else:
|
||||
attrs['latestUrl'] = attrs['stripUrl'] % lastStrip
|
||||
attrs['url'] = attrs['stripUrl'] % lastStrip
|
||||
globals()[classname] = make_scraper(classname, **attrs)
|
||||
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ def add(name, path):
|
|||
classname = 'Creators_%s' % name
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name = 'Creators/' + name,
|
||||
latestUrl = baseurl + path + '.html',
|
||||
url = baseurl + path + '.html',
|
||||
stripUrl = baseurl + path + '/%s.html',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = compile(tagre("a", "href", r'(%s/\d+\.html)' % path) +
|
||||
|
|
|
@ -10,18 +10,18 @@ from ..util import tagre
|
|||
|
||||
|
||||
class DailyDose(_BasicScraper):
|
||||
baseUrl = 'http://dailydoseofcomics.com/'
|
||||
starter = indirectStarter(baseUrl,
|
||||
url = 'http://dailydoseofcomics.com/'
|
||||
starter = indirectStarter(url,
|
||||
compile(tagre("a", "href", r'(http://dailydoseofcomics\.com/[^"]+)', after="preview")))
|
||||
stripUrl = baseUrl + '%s/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+)', before="align(?:none|center)"))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://dailydoseofcomics\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class Damonk(_BasicScraper):
|
||||
latestUrl = 'http://www.damonk.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.damonk.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/\d+\.html)') +
|
||||
tagre("img", "src", r'/images/previous_day\.gif'))
|
||||
|
@ -30,7 +30,7 @@ class Damonk(_BasicScraper):
|
|||
|
||||
# XXX disallowed /search by robots.txt
|
||||
class _DandyAndCompany(_BasicScraper):
|
||||
latestUrl = 'http://www.dandyandcompany.com/'
|
||||
url = 'http://www.dandyandcompany.com/'
|
||||
stripUrl = None
|
||||
multipleImagesPerStrip = True
|
||||
imageSearch = compile(tagre("a", "href", r'(http://\d+\.bp\.blogspot\.com/[^"]+)', after="imageanchor"))
|
||||
|
@ -39,32 +39,32 @@ class _DandyAndCompany(_BasicScraper):
|
|||
|
||||
|
||||
class DarkWings(_BasicScraper):
|
||||
latestUrl = 'http://www.flowerlarkstudios.com/dark-wings/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.flowerlarkstudios.com/dark-wings/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.flowerlarkstudios\.com/dark-wings/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.flowerlarkstudios\.com/dark-wings/[^"]+)', after="navi-prev"))
|
||||
help = 'Index format: yyyy/mm/dd/page-nn-mm'
|
||||
|
||||
|
||||
class DeathToTheExtremist(_BasicScraper):
|
||||
latestUrl = 'http://www.dtecomic.com/'
|
||||
stripUrl = latestUrl + '?n=%s'
|
||||
url = 'http://www.dtecomic.com/'
|
||||
stripUrl = url + '?n=%s'
|
||||
imageSearch = compile(r'"(comics/.*?)"')
|
||||
prevSearch = compile(r'</a> <a href="(\?n=.*?)"><.+?/aprev.gif"')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class DeepFried(_BasicScraper):
|
||||
latestUrl = 'http://www.whatisdeepfried.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.whatisdeepfried.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.whatisdeepfried\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.whatisdeepfried\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: non'
|
||||
|
||||
|
||||
class DMFA(_BasicScraper):
|
||||
latestUrl = 'http://www.missmab.com/'
|
||||
stripUrl = latestUrl + 'Comics/Vol_%s.php'
|
||||
url = 'http://www.missmab.com/'
|
||||
stripUrl = url + 'Comics/Vol_%s.php'
|
||||
imageSearch = compile(tagre("img", "src", r'((?:Comics/|Vol)[^"]+)'))
|
||||
multipleImagesPerStrip = True
|
||||
prevSearch = compile(tagre("a", "href", r'((?:Comics/)?Vol[^"]+)')+
|
||||
|
@ -73,15 +73,15 @@ class DMFA(_BasicScraper):
|
|||
|
||||
|
||||
class DoemainOfOurOwn(_BasicScraper):
|
||||
latestUrl = 'http://www.doemain.com/'
|
||||
stripUrl = latestUrl + 'index.cgi/%s'
|
||||
url = 'http://www.doemain.com/'
|
||||
stripUrl = url + 'index.cgi/%s'
|
||||
imageSearch = compile(r"<img border='0' width='\d+' height='\d+' src='(/strips/\d{4}/\d{6}-[^\']+)'")
|
||||
prevSearch = compile(r'<a href="(/index\.cgi/\d{4}-\d{2}-\d{2})"><img width="\d+" height="\d+" border="\d+" alt="Previous Strip"')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class DrFun(_BasicScraper):
|
||||
latestUrl = 'http://www.ibiblio.org/Dave/ar00502.htm'
|
||||
url = 'http://www.ibiblio.org/Dave/ar00502.htm'
|
||||
stripUrl = 'http://www.ibiblio.org/Dave/ar%s.htm'
|
||||
imageSearch = compile(r'<A HREF= "(Dr-Fun/df\d+/df[^"]+)">')
|
||||
multipleImagesPerStrip = True
|
||||
|
@ -90,40 +90,40 @@ class DrFun(_BasicScraper):
|
|||
|
||||
|
||||
class Dracula(_BasicScraper):
|
||||
latestUrl = 'http://draculacomic.net/'
|
||||
stripUrl = latestUrl + 'comic.php?comicID=%s'
|
||||
url = 'http://draculacomic.net/'
|
||||
stripUrl = url + 'comic.php?comicID=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(comics/[^"]+)'))
|
||||
prevSearch = compile(r' <a class="archivelink" href="(.+?)">« Prev</a>')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class DragonTails(_BasicScraper):
|
||||
latestUrl = 'http://www.dragon-tails.com/'
|
||||
stripUrl = latestUrl + 'archive.php?date=%s'
|
||||
url = 'http://www.dragon-tails.com/'
|
||||
stripUrl = url + 'archive.php?date=%s'
|
||||
imageSearch = compile(r'"(newcomic/.+?)"')
|
||||
prevSearch = compile(r'"(archive.+?)">.+n_2')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class DreamKeepersPrelude(_BasicScraper):
|
||||
latestUrl = 'http://www.dreamkeeperscomic.com/Prelude.php'
|
||||
stripUrl = latestUrl + '?pg=%s'
|
||||
url = 'http://www.dreamkeeperscomic.com/Prelude.php'
|
||||
stripUrl = url + '?pg=%s'
|
||||
imageSearch = compile(r'(images/PreludeNew/.+?)"')
|
||||
prevSearch = compile(r'(Prelude.php\?pg=.+?)"')
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class Drowtales(_BasicScraper):
|
||||
latestUrl = 'http://www.drowtales.com/mainarchive.php'
|
||||
stripUrl = latestUrl + '?sid=%s'
|
||||
url = 'http://www.drowtales.com/mainarchive.php'
|
||||
stripUrl = url + '?sid=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.drowtales\.com/mainarchive/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?sid=\d+)', before="link_prev_top"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class DieselSweeties(_BasicScraper):
|
||||
latestUrl = 'http://www.dieselsweeties.com/'
|
||||
stripUrl = latestUrl + 'archive/%s'
|
||||
url = 'http://www.dieselsweeties.com/'
|
||||
stripUrl = url + 'archive/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/hstrips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archive/\d+)') +
|
||||
tagre("img", "src", r'(?:http://www\.dieselsweeties\.com/ximages/blackbackarrow160.png|/ximages/prev\.gif)'))
|
||||
|
@ -136,23 +136,23 @@ class DieselSweeties(_BasicScraper):
|
|||
|
||||
|
||||
class DominicDeegan(_BasicScraper):
|
||||
latestUrl = 'http://www.dominic-deegan.com/'
|
||||
stripUrl = latestUrl + 'view.php?date=%s'
|
||||
url = 'http://www.dominic-deegan.com/'
|
||||
stripUrl = url + 'view.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(comics/\d+\.gif)'))
|
||||
prevSearch = compile(r'"(view.php\?date=[^"]+)".+?prev21')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class DorkTower(_BasicScraper):
|
||||
latestUrl = 'http://www.dorktower.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.dorktower.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.dorktower\.com/files/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.dorktower\.com/[^"]+)')+"Previous")
|
||||
help = 'Index format: yyyy/mm/dd/stripname-dd-mm-yy'
|
||||
|
||||
|
||||
class DresdenCodak(_BasicScraper):
|
||||
latestUrl = 'http://dresdencodak.com/'
|
||||
url = 'http://dresdencodak.com/'
|
||||
stripUrl = None
|
||||
imageSearch = compile(r'<img src="http://dresdencodak.com(/comics/.*?\.jpg)"')
|
||||
prevSearch = compile(r'<a href="http://dresdencodak.com(/.*?)"><img src=http://dresdencodak.com/m_prev.png>')
|
||||
|
@ -160,8 +160,8 @@ class DresdenCodak(_BasicScraper):
|
|||
|
||||
|
||||
class Dilbert(_BasicScraper):
|
||||
latestUrl = 'http://dilbert.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://dilbert.com/'
|
||||
stripUrl = url + '%s/'
|
||||
prevSearch = compile(tagre("a", "href", r'(/\d+-\d+-\d+/)', after="STR_Prev"))
|
||||
imageSearch = compile(tagre("img", "src", r'(/dyn/str_strip/[^"]+\.strip\.zoom\.gif)'))
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
|
|
@ -40,6 +40,7 @@ def add(name, path):
|
|||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name = 'DrunkDuck/' + name,
|
||||
url = _url,
|
||||
starter = _starter,
|
||||
stripUrl = _url + '%s/',
|
||||
imageSearch = _imageSearch,
|
||||
|
|
|
@ -10,32 +10,32 @@ from ..util import tagre
|
|||
|
||||
|
||||
class EdibleDirt(_BasicScraper):
|
||||
latestUrl = 'http://eddirt.frozenreality.co.uk/'
|
||||
stripUrl = latestUrl + 'index.php?id=%s'
|
||||
url = 'http://eddirt.frozenreality.co.uk/'
|
||||
stripUrl = url + 'index.php?id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(strips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r"(index\.php\?id=\d+)")+"Previous")
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class EerieCuties(_BasicScraper):
|
||||
latestUrl = 'http://www.eeriecuties.com/'
|
||||
stripUrl = latestUrl + 'strips-ec/%s'
|
||||
url = 'http://www.eeriecuties.com/'
|
||||
stripUrl = url + 'strips-ec/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://ace\.eeriecuties\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', before="prev"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class Eriadan(_BasicScraper):
|
||||
latestUrl = 'http://www.shockdom.com/webcomics/eriadan/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.shockdom.com/webcomics/eriadan/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.shockdom\.com/webcomics/eriadan/files/[^"]+)', after='width="800"'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/nnn (unpadded)'
|
||||
|
||||
|
||||
class ElfOnlyInn(_BasicScraper):
|
||||
latestUrl = 'http://www.elfonlyinn.net/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.elfonlyinn.net/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/\d+\.html)') +
|
||||
tagre("img", "src", r'/images/previous_day\.gif'))
|
||||
|
@ -44,8 +44,8 @@ class ElfOnlyInn(_BasicScraper):
|
|||
|
||||
class ElGoonishShive(_BasicScraper):
|
||||
name = 'KeenSpot/ElGoonishShive'
|
||||
latestUrl = 'http://www.egscomics.com/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.egscomics.com/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(r"'(comics/.+?)'")
|
||||
prevSearch = compile(r"<a href='(/\?date=.+?)'.+?arrow_prev.gif")
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
@ -53,16 +53,16 @@ class ElGoonishShive(_BasicScraper):
|
|||
|
||||
class ElGoonishShiveNP(_BasicScraper):
|
||||
name = 'KeenSpot/ElGoonishShiveNP'
|
||||
latestUrl = 'http://www.egscomics.com/egsnp/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.egscomics.com/egsnp/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(r'<div class=\'comic2\'><img src=\'(comics/\d{4}/\d{2}.+?)\'')
|
||||
prevSearch = compile(r'<a href=\'(.+?)\'[^>]+?onmouseover=\'\$\("navimg(6|2)"\)')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class EmergencyExit(_BasicScraper):
|
||||
latestUrl = 'http://www.eecomics.net/'
|
||||
stripUrl = latestUrl + "?strip_id=%s"
|
||||
url = 'http://www.eecomics.net/'
|
||||
stripUrl = url + "?strip_id=%s"
|
||||
imageSearch = compile(r'"(comics/.+?)"')
|
||||
prevSearch = compile(tagre("a", "href", r'(\?strip_id=\d+)') + tagre("img", "alt", r"Prior"))
|
||||
help = 'Index format: n'
|
||||
|
@ -70,15 +70,15 @@ class EmergencyExit(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _ErrantStory(_BasicScraper):
|
||||
latestUrl = 'http://www.errantstory.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.errantstory.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'<img[^>]+?src="([^"]*?comics/.+?)"')
|
||||
prevSearch = compile(r'><a href="(.+?)"><Previous</a>')
|
||||
help = 'Index format: yyyy-mm-dd/num'
|
||||
|
||||
|
||||
class Evercrest(_BasicScraper):
|
||||
latestUrl = 'http://www.evercrest.com/archives/20030308'
|
||||
url = 'http://www.evercrest.com/archives/20030308'
|
||||
stripUrl = 'http://www.evercrest.com/archives/%s'
|
||||
imageSearch = compile(r'<img.+?src="([^"]*/(images/oldstrips|archives/i)/[^"]*)"')
|
||||
prevSearch = compile(r'<a.+?href="(http://www\.evercrest\.com/archives/\d+)">< Previous')
|
||||
|
@ -86,62 +86,63 @@ class Evercrest(_BasicScraper):
|
|||
|
||||
|
||||
class EverybodyLovesEricRaymond(_BasicScraper):
|
||||
latestUrl = 'http://geekz.co.uk/lovesraymond/'
|
||||
stripUrl = latestUrl + 'archive/%s'
|
||||
url = 'http://geekz.co.uk/lovesraymond/'
|
||||
stripUrl = url + 'archive/%s'
|
||||
imageSearch = compile(r'<img src="((?:http://geekz.co.uk)?/lovesraymond/wp-content(?:/images)/ep\d+\w?\.jpg)"', IGNORECASE)
|
||||
prevSearch = compile(r'« <a href="(http://geekz.co.uk/lovesraymond/archive/[^/"]*)">')
|
||||
help = 'Index format: name-of-old-comic'
|
||||
|
||||
|
||||
class EvilDiva(_BasicScraper):
|
||||
latestUrl = 'http://www.evildivacomics.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.evildivacomics.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r'(/comics/.+?)"')
|
||||
prevSearch = compile(r'http.+?com/(.+?)".+?"prev')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
class EvilInc(_BasicScraper):
|
||||
latestUrl = 'http://www.evil-comic.com/'
|
||||
stripUrl = latestUrl + 'archive/%s.html'
|
||||
url = 'http://www.evil-comic.com/'
|
||||
stripUrl = url + 'archive/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + tagre("img", "src", r'/images/previous\.gif'))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Exiern(_BasicScraper):
|
||||
latestUrl = 'http://www.exiern.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.exiern.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.exiern\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.exiern\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class ExiernDarkReflections(_BasicScraper):
|
||||
latestUrl = 'http://darkreflections.exiern.com/'
|
||||
stripUrl = latestUrl + 'index.php?strip_id=%s'
|
||||
url = 'http://darkreflections.exiern.com/'
|
||||
stripUrl = url + 'index.php?strip_id=%s'
|
||||
imageSearch = compile(r'"(istrip.+?)"')
|
||||
prevSearch = compile(r'First.+?(/index.+?)".+?prev')
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class ExtraLife(_BasicScraper):
|
||||
latestUrl = 'http://www.myextralife.com/'
|
||||
stripUrl = latestUrl + 'comic/%s/'
|
||||
url = 'http://www.myextralife.com/'
|
||||
stripUrl = url + 'comic/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.myextralife\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="prev"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class EyeOfRamalach(_BasicScraper):
|
||||
latestUrl = 'http://theeye.katbox.net/'
|
||||
stripUrl = latestUrl + 'archive/%s/'
|
||||
url = 'http://theeye.katbox.net/'
|
||||
stripUrl = url + 'archive/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://theeye\.katbox\.net/wp-content/webcomic/theeye/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://theeye\.katbox\.net/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class EarthsongSaga(_BasicScraper):
|
||||
starter = indirectStarter('http://www.earthsongsaga.com/', compile(tagre("a", "href", r'([^"]+)') + tagre("img", "src", r'[^"]+current\.jpg')))
|
||||
url = 'http://www.earthsongsaga.com/'
|
||||
starter = indirectStarter(url, compile(tagre("a", "href", r'([^"]+)') + tagre("img", "src", r'[^"]+current\.jpg')))
|
||||
stripUrl = None
|
||||
imageSearch = compile(tagre("img", "src", r'((?:\.\./)?images/vol\d+/ch\d+/\d+\.\w+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="Previous"))
|
||||
|
@ -153,16 +154,16 @@ class EarthsongSaga(_BasicScraper):
|
|||
|
||||
|
||||
class ExploitationNow(_BasicScraper):
|
||||
latestUrl = 'http://www.exploitationnow.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.exploitationnow.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.exploitationnow\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.exploitationnow\.com/[^"]+)', after="navi-prev"))
|
||||
help = 'Index format: yyyy-mm-dd/num'
|
||||
|
||||
|
||||
class Ellerbisms(_BasicScraper):
|
||||
latestUrl = 'http://www.ellerbisms.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.ellerbisms.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.ellerbisms\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.ellerbisms\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
|
|
@ -10,40 +10,40 @@ from ..helpers import indirectStarter
|
|||
|
||||
|
||||
class FalconTwin(_BasicScraper):
|
||||
latestUrl = 'http://www.falcontwin.com/'
|
||||
stripUrl = latestUrl + 'index.html?strip=%s'
|
||||
url = 'http://www.falcontwin.com/'
|
||||
stripUrl = url + 'index.html?strip=%s'
|
||||
imageSearch = compile(r'"(strips/.+?)"')
|
||||
prevSearch = compile(r'"prev"><a href="(index.+?)"')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class FauxPas(_BasicScraper):
|
||||
latestUrl = 'http://www.ozfoxes.net/cgi/pl-fp1.cgi'
|
||||
stripUrl = latestUrl + '?%s'
|
||||
url = 'http://www.ozfoxes.net/cgi/pl-fp1.cgi'
|
||||
stripUrl = url + '?%s'
|
||||
imageSearch = compile(r'<img .*src="(.*fp/fp.*(png|jpg|gif))"')
|
||||
prevSearch = compile(r'<a href="(pl-fp1\.cgi\?\d+)">Previous Strip')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class FeyWinds(_BasicScraper):
|
||||
url = 'http://kitsune.rydia.net/index.html'
|
||||
stripUrl = 'http://kitsune.rydia.net/comic/page.php?id=%s'
|
||||
imageSearch = compile(r"(../comic/pages//.+?)'")
|
||||
prevSearch = compile(r"(page.php\?id=.+?)'.+?navprevious.png")
|
||||
help = 'Index format: n (unpadded)'
|
||||
starter = indirectStarter('http://kitsune.rydia.net/index.html',
|
||||
compile(r'(comic/page.php\?id.+?)"'))
|
||||
starter = indirectStarter(url, compile(r'(comic/page.php\?id.+?)"'))
|
||||
|
||||
|
||||
class FilibusterCartoons(_BasicScraper):
|
||||
latestUrl = 'http://www.filibustercartoons.com/'
|
||||
stripUrl = latestUrl + 'index.php/%s'
|
||||
url = 'http://www.filibustercartoons.com/'
|
||||
stripUrl = url + 'index.php/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.filibustercartoons\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.filibustercartoons\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/name'
|
||||
|
||||
|
||||
class FlakyPastry(_BasicScraper):
|
||||
latestUrl = 'http://flakypastry.runningwithpencils.com/index.php'
|
||||
url = 'http://flakypastry.runningwithpencils.com/index.php'
|
||||
stripUrl = 'http://flakypastry.runningwithpencils.com/comic.php?strip_id=%s'
|
||||
imageSearch = compile(r'<img src="(comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)".+?btn_back')
|
||||
|
@ -51,8 +51,8 @@ class FlakyPastry(_BasicScraper):
|
|||
|
||||
|
||||
class Flemcomics(_BasicScraper):
|
||||
latestUrl = 'http://www.flemcomics.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.flemcomics.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/\d+\.html)') +
|
||||
tagre("img", "src", r'/images/previous_day\.jpg'))
|
||||
|
@ -60,15 +60,15 @@ class Flemcomics(_BasicScraper):
|
|||
|
||||
|
||||
class Flipside(_BasicScraper):
|
||||
latestUrl = 'http://flipside.keenspot.com/comic.php'
|
||||
stripUrl = latestUrl + '?i=%s'
|
||||
url = 'http://flipside.keenspot.com/comic.php'
|
||||
stripUrl = url + '?i=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.flipside\.keenspot\.com/comic/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://flipside\.keenspot\.com/comic\.php\?i=\d+)', after="prev"))
|
||||
help = 'Index format: nnnn'
|
||||
|
||||
|
||||
class Footloose(_BasicScraper):
|
||||
latestUrl = 'http://footloosecomic.com/footloose/today.php'
|
||||
url = 'http://footloosecomic.com/footloose/today.php'
|
||||
stripUrl = 'http://footloosecomic.com/footloose/pages.php?page=%s'
|
||||
imageSearch = compile(r'<img src="/footloose/(.+?)"')
|
||||
prevSearch = compile(r'(?:first.+?[^>]).+?(/footloose/.+?)".+?(?:prev)')
|
||||
|
@ -76,7 +76,7 @@ class Footloose(_BasicScraper):
|
|||
|
||||
|
||||
class Freefall(_BasicScraper):
|
||||
latestUrl = 'http://freefall.purrsia.com/default.htm'
|
||||
url = 'http://freefall.purrsia.com/default.htm'
|
||||
stripUrl = 'http://freefall.purrsia.com/ff%s/fc%s.htm'
|
||||
imageSearch = compile(r'<img src="(/ff\d+/.+?.\w{3,4})"')
|
||||
prevSearch = compile(r'<A HREF="(/ff\d+/.+?.htm)">Previous</A>')
|
||||
|
@ -84,17 +84,18 @@ class Freefall(_BasicScraper):
|
|||
|
||||
|
||||
class FantasyRealms(_BasicScraper):
|
||||
stripUrl = 'http://www.fantasyrealmsonline.com/manga/%s.php'
|
||||
url = 'http://www.fantasyrealmsonline.com/'
|
||||
stripUrl = url + 'manga/%s.php'
|
||||
imageSearch = compile(r'<img src="(\d{1,4}.\w{3,4})" width="540"', IGNORECASE)
|
||||
prevSearch = compile(r'<a href="(.+?)"><img src="../images/nav-back.gif"', IGNORECASE)
|
||||
help = 'Index format: nnn'
|
||||
starter = indirectStarter('http://www.fantasyrealmsonline.com/',
|
||||
starter = indirectStarter(url,
|
||||
compile(r'<a href="(manga/.+?)"><img src="preview.jpg"', IGNORECASE))
|
||||
|
||||
|
||||
class FunInJammies(_BasicScraper):
|
||||
latestUrl = 'http://www.funinjammies.com/'
|
||||
stripUrl = latestUrl + 'comic.php?issue=%s'
|
||||
url = 'http://www.funinjammies.com/'
|
||||
stripUrl = url + 'comic.php?issue=%s'
|
||||
imageSearch = compile(r'(/comics/.+?)"')
|
||||
prevSearch = compile(r'(/comic.php.+?)" id.+?prev')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
|
|
@ -10,15 +10,16 @@ from ..util import tagre
|
|||
|
||||
|
||||
class Galaxion(_BasicScraper):
|
||||
latestUrl = 'http://galaxioncomics.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://galaxioncomics.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://galaxioncomics\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://galaxioncomics\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: n-comic/book-n/chapter-n/title-nnn'
|
||||
|
||||
|
||||
class Garanos(_BasicScraper):
|
||||
starter = indirectStarter('http://garanos.alexheberling.com/pages/page-1/',
|
||||
url = 'http://garanos.alexheberling.com/pages/page-1/'
|
||||
starter = indirectStarter(url,
|
||||
compile(tagre("a", "href", r'(http://garanos\.alexheberling\.com/pages/[^"]+)', after="navi-last")))
|
||||
stripUrl = 'http://garanos.alexheberling.com/pages/page-%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://garanos\.alexheberling\.com/comics/[^"]+)'))
|
||||
|
@ -27,40 +28,40 @@ class Garanos(_BasicScraper):
|
|||
|
||||
|
||||
class GUComics(_BasicScraper):
|
||||
latestUrl = 'http://www.gucomics.com/comic/'
|
||||
stripUrl = latestUrl + '?cdate=%s'
|
||||
url = 'http://www.gucomics.com/comic/'
|
||||
stripUrl = url + '?cdate=%s'
|
||||
imageSearch = compile(r'<IMG src="(/comics/\d{4}/gu_.*?)"')
|
||||
prevSearch = compile(r'<A href="(/comic/\?cdate=\d+)"><IMG src="/images/cnav_prev')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class GirlGenius(_BasicScraper):
|
||||
latestUrl = 'http://girlgeniusonline.com/comic.php'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://girlgeniusonline.com/comic.php'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(r"(/ggmain/strips/.+?)'")
|
||||
prevSearch = compile(r"</a> <a href=.+?(/comic.php\?date=.+?)'.+?Previous")
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class GirlsWithSlingshots(_BasicScraper):
|
||||
latestUrl = 'http://www.girlswithslingshots.com/'
|
||||
stripUrl = latestUrl + 'comic/gws-%s/'
|
||||
url = 'http://www.girlswithslingshots.com/'
|
||||
stripUrl = url + 'comic/gws-%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.girlswithslingshots\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.girlswithslingshots\.com/comic/[^"]+)', after="prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class GleefulNihilism(_BasicScraper):
|
||||
latestUrl = 'http://gleefulnihilism.com/'
|
||||
stripUrl = latestUrl + 'comics/%s/'
|
||||
url = 'http://gleefulnihilism.com/'
|
||||
stripUrl = url + 'comics/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://gleefulnihilism\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://gleefulnihilism\.com/comics/[^"]+)') + 'Previous')
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
||||
|
||||
class Goats(_BasicScraper):
|
||||
latestUrl = 'http://www.goats.com/'
|
||||
stripUrl = latestUrl + 'archive/%s.html'
|
||||
url = 'http://www.goats.com/'
|
||||
stripUrl = url + 'archive/%s.html'
|
||||
imageSearch = compile(r'<img.+?src="(/comix/.+?)"')
|
||||
prevSearch = compile(r'<a href="(/archive/\d{6}.html)" class="button" title="go back">')
|
||||
help = 'Index format: yymmdd'
|
||||
|
@ -80,24 +81,24 @@ class GoneWithTheBlastwave(_BasicScraper):
|
|||
|
||||
|
||||
class GrrlPower(_BasicScraper):
|
||||
latestUrl = 'http://www.grrlpowercomic.com/'
|
||||
stripUrl = latestUrl + 'archives/%s'
|
||||
url = 'http://www.grrlpowercomic.com/'
|
||||
stripUrl = url + 'archives/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.grrlpowercomic\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.grrlpowercomic\.com/archives/\d+)', after="navi-prev"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class GunnerkrigCourt(_BasicScraper):
|
||||
latestUrl = 'http://www.gunnerkrigg.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.gunnerkrigg.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?p=\d+)') + tagre("img", "src", "http://www\.gunnerkrigg\.com/images/prev_a\.jpg"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class Gunshow(_BasicScraper):
|
||||
latestUrl = 'http://gunshowcomic.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://gunshowcomic.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://gunshowcomic\.com/comics/[^"]+)'))
|
||||
multipleImagesPerStrip = True
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + tagre("img", "src", r'[^"]*menu/small/previous\.gif'))
|
||||
|
@ -105,40 +106,40 @@ class Gunshow(_BasicScraper):
|
|||
|
||||
|
||||
class GleefulNihilism(_BasicScraper):
|
||||
latestUrl = 'http://gleefulnihilism.com/'
|
||||
stripUrl = latestUrl + 'comics/%s/'
|
||||
url = 'http://gleefulnihilism.com/'
|
||||
stripUrl = url + 'comics/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://gleefulnihilism\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://gleefulnihilism\.com/comics/[^"]+)', after="Previous"))
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
||||
|
||||
class GastroPhobia(_BasicScraper):
|
||||
latestUrl = 'http://www.gastrophobia.com/'
|
||||
stripUrl = latestUrl + 'index.php?date=%s'
|
||||
url = 'http://www.gastrophobia.com/'
|
||||
stripUrl = url + 'index.php?date=%s'
|
||||
imageSearch = compile(r'<img src="(http://gastrophobia.com/comix/[^"]+)"[^>]*>(?!<br>)')
|
||||
prevSearch = compile(r'<a href="(.+?)"><img src="pix/prev.gif" ')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class Geeks(_BasicScraper):
|
||||
latestUrl = 'http://sevenfloorsdown.com/geeks/'
|
||||
stripUrl = latestUrl + 'archives/%s'
|
||||
url = 'http://sevenfloorsdown.com/geeks/'
|
||||
stripUrl = url + 'archives/%s'
|
||||
imageSearch = compile(r'<img src=\'(http://sevenfloorsdown.com/geeks/comics/.+?)\'')
|
||||
prevSearch = compile(r'<a href="(.+?)">« Previous')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class GlassHalfEmpty(_BasicScraper):
|
||||
latestUrl = 'http://www.defectivity.com/ghe/index.php'
|
||||
stripUrl = latestUrl + '?strip_id=%s'
|
||||
url = 'http://www.defectivity.com/ghe/index.php'
|
||||
stripUrl = url + '?strip_id=%s'
|
||||
imageSearch = compile(r'src="(comics/.+?)"')
|
||||
prevSearch = compile(tagre("a", "href", r'(\?strip_id=\d+)') + tagre("img", "src", r'\.\./images/arrowbuttons/onback\.jpg'))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class GreystoneInn(_BasicScraper):
|
||||
latestUrl = 'http://www.greystoneinn.net/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.greystoneinn.net/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch=compile(tagre("img", "src", r'(/comic[s|/][^"]+)'))
|
||||
prevSearch=compile(tagre("a", "href", r'[^"]*(/d/\d+\.s?html)')+r"[^>]+/images/(?:nav_02|previous_day)\.gif")
|
||||
help='Index format: yyyymmdd'
|
||||
|
|
|
@ -13,6 +13,7 @@ _nextSearch = compile(tagre("a", "href", r'(/[^"]+/\d+/\d+/\d+)', after="next"))
|
|||
|
||||
def add(name, shortname):
|
||||
baseUrl = 'http://www.gocomics.com'
|
||||
url = baseUrl + shortname
|
||||
classname = 'GoComics_%s' % name
|
||||
|
||||
@classmethod
|
||||
|
@ -21,7 +22,8 @@ def add(name, shortname):
|
|||
return "%s_%s%s%s.gif" % (name, year, month, day)
|
||||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
starter = bounceStarter(baseUrl + shortname, _nextSearch),
|
||||
url = url,
|
||||
starter = bounceStarter(url, _nextSearch),
|
||||
name='GoComics/' + name,
|
||||
stripUrl=baseUrl + quote(shortname) + '/%s',
|
||||
imageSearch = _imageSearch,
|
||||
|
|
|
@ -6,8 +6,8 @@ from ..util import tagre
|
|||
|
||||
|
||||
class HorribleVille(_BasicScraper):
|
||||
latestUrl = 'http://horribleville.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://horribleville.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/[^"]+)') + tagre("img", "src", r'/images/previous\.png'))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -8,40 +8,40 @@ from ..util import tagre
|
|||
|
||||
|
||||
class IanJay(_BasicScraper):
|
||||
latestUrl = 'http://ianjay.net/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://ianjay.net/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://ianjay\.net/comics/\d+[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://ianjay\.net/\?p=\d+)', after="Previous"))
|
||||
help = 'Index foramt: nnn'
|
||||
|
||||
|
||||
class IDreamOfAJeanieBottle(_BasicScraper):
|
||||
latestUrl = 'http://jeaniebottle.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://jeaniebottle.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r'(/comics/.+?)"')
|
||||
prevSearch = compile(tagre("a", "href", r'(http://jeaniebottle\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class IrregularWebcomic(_BasicScraper):
|
||||
latestUrl = 'http://www.irregularwebcomic.net/'
|
||||
stripUrl = latestUrl + '%s.html'
|
||||
url = 'http://www.irregularwebcomic.net/'
|
||||
stripUrl = url + '%s.html'
|
||||
imageSearch = compile(r'<img .*src="(.*comics/.*(png|jpg|gif))".*>')
|
||||
prevSearch = compile(r'<a href="(/\d+\.html|/cgi-bin/comic\.pl\?comic=\d+)">Previous ')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class InsideOut(_BasicScraper):
|
||||
latestUrl = 'http://www.insideoutcomic.com/'
|
||||
stripUrl = latestUrl + 'html/%s.html'
|
||||
url = 'http://www.insideoutcomic.com/'
|
||||
stripUrl = url + 'html/%s.html'
|
||||
imageSearch = compile(r'Picture12LYR.+?C="(.+?/assets/images/.+?)"')
|
||||
prevSearch = compile(r'Picture7LYR.+?F="(.+?/html/.+?)"')
|
||||
help = 'Index format: n_comic_name'
|
||||
|
||||
|
||||
class ItsWalky(_BasicScraper):
|
||||
latestUrl = 'http://www.itswalky.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.itswalky.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comic[s|/][^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'[^"]*(/d/\d+\.s?html)')+r"[^>]+/images/(?:nav_02|previous_day)\.gif")
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -8,40 +8,40 @@ from ..util import tagre
|
|||
|
||||
|
||||
class JackCannon(_BasicScraper):
|
||||
latestUrl = 'http://fancyadventures.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://fancyadventures.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://fancyadventures\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://fancyadventures\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/page-nnn'
|
||||
|
||||
|
||||
class JerkCity(_BasicScraper):
|
||||
latestUrl = 'http://www.jerkcity.com/'
|
||||
stripUrl = latestUrl + '_jerkcity%s.html'
|
||||
url = 'http://www.jerkcity.com/'
|
||||
stripUrl = url + '_jerkcity%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/jerkcity[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/_jerkcity[^"]+)') + r'<<Previous')
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class JoeAndMonkey(_BasicScraper):
|
||||
latestUrl = 'http://www.joeandmonkey.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.joeandmonkey.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'"(/comic/[^"]+)"')
|
||||
prevSearch = compile(r"<a href='(/\d+)'>Previous")
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class JohnnyWander(_BasicScraper):
|
||||
latestUrl = 'http://www.johnnywander.com/'
|
||||
stripUrl = latestUrl + 'comics/%s'
|
||||
url = 'http://www.johnnywander.com/'
|
||||
stripUrl = url + 'comics/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.johnnywander\.com/files/comics/\d+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/comics/\d+)') + r'prev')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class JustAnotherEscape(_BasicScraper):
|
||||
latestUrl = 'http://www.justanotherescape.com/'
|
||||
stripUrl = latestUrl + 'index.cgi?date=%s'
|
||||
url = 'http://www.justanotherescape.com/'
|
||||
stripUrl = url + 'index.cgi?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.justanotherescape\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.justanotherescape\.com//index\.cgi\?date=\d+)')
|
||||
+ tagre("img", "alt", "Previous Comic"))
|
||||
|
|
|
@ -7,7 +7,7 @@ from ..scraper import _BasicScraper
|
|||
from ..util import tagre
|
||||
|
||||
class Key(_BasicScraper):
|
||||
latestUrl = 'http://key.shadilyn.com/latestpage.html'
|
||||
url = 'http://key.shadilyn.com/latestpage.html'
|
||||
stripUrl = 'http://key.shadilyn.com/pages/%s.html'
|
||||
imageSearch = compile(r'"((?:images/.+?)|(?:pages/images/.+?))"')
|
||||
prevSearch = compile(r'</a><a href="(.+?html)".+?prev')
|
||||
|
@ -15,15 +15,15 @@ class Key(_BasicScraper):
|
|||
|
||||
|
||||
class Krakow(_BasicScraper):
|
||||
latestUrl = 'http://www.krakow.krakowstudios.com/'
|
||||
stripUrl = latestUrl + 'archive.php?date=%s'
|
||||
url = 'http://www.krakow.krakowstudios.com/'
|
||||
stripUrl = url + 'archive.php?date=%s'
|
||||
imageSearch = compile(r'<img src="(comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(archive\.php\?date=.+?)"><img border=0 name=previous_day')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Kukuburi(_BasicScraper):
|
||||
latestUrl = 'http://www.kukuburi.com/current/'
|
||||
url = 'http://www.kukuburi.com/current/'
|
||||
stripUrl = 'http://www.kukuburi.com/v2/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.kukuburi\.com/v2/comics/[^"]+)', after='alt="[^"]'))
|
||||
prevSearch = compile(r'nav-previous.+?"(http.+?)"')
|
||||
|
@ -31,8 +31,8 @@ class Kukuburi(_BasicScraper):
|
|||
|
||||
|
||||
class KevinAndKell(_BasicScraper):
|
||||
latestUrl = 'http://www.kevinandkell.com/'
|
||||
stripUrl = latestUrl + '%s/kk%s%s.html'
|
||||
url = 'http://www.kevinandkell.com/'
|
||||
stripUrl = url + '%s/kk%s%s.html'
|
||||
imageSearch = compile(r'<img.+?src="(/?(\d+/)?strips/kk\d+.gif)"', IGNORECASE)
|
||||
prevSearch = compile(r'<a.+?href="(/?(\.\./)?\d+/kk\d+\.html)"[^>]*><span>Previous Strip', IGNORECASE)
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
@ -43,15 +43,15 @@ class KevinAndKell(_BasicScraper):
|
|||
|
||||
class KhaosKomix(_BasicScraper):
|
||||
adult = True
|
||||
latestUrl = 'http://www.khaoskomix.com/'
|
||||
stripUrl = latestUrl + 'komix/%s'
|
||||
url = 'http://www.khaoskomix.com/'
|
||||
stripUrl = url + 'komix/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.khaoskomix\.com/komiximg/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.khaoskomix\.com/komix/[^"]+)', after="Prev"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class KillerKomics(_BasicScraper):
|
||||
latestUrl = 'http://www.killerkomics.com/web-comics/index_ang.cfm'
|
||||
url = 'http://www.killerkomics.com/web-comics/index_ang.cfm'
|
||||
stripUrl = 'http://www.killerkomics.com/web-comics/%s.cfm'
|
||||
imageSearch = compile(r'<img src="(http://www.killerkomics.com/FichiersUpload/Comics/.+?)"')
|
||||
prevSearch = compile(r'<div id="precedent"><a href="(.+?)"')
|
||||
|
@ -60,8 +60,8 @@ class KillerKomics(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _Kofightclub(_BasicScraper):
|
||||
latestUrl = 'http://www.kofightclub.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.kofightclub.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(\.\./images/\d+[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'((?:http://www\.kofightclub\.com)?/d/\d+\.html)')
|
||||
+ tagre("img", "alt", "Previous comic"))
|
||||
|
@ -69,8 +69,8 @@ class _Kofightclub(_BasicScraper):
|
|||
|
||||
|
||||
class KuroShouri(_BasicScraper):
|
||||
latestUrl = 'http://kuroshouri.com/'
|
||||
stripUrl = latestUrl + '?webcomic_post=%s'
|
||||
url = 'http://kuroshouri.com/'
|
||||
stripUrl = url + '?webcomic_post=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(http://kuroshouri\.com/wp-content/webcomic/kuroshouri/[^'\"]+)", quote="['\"]"))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://kuroshouri\.com/\?webcomic_post=[^"]+)', after="previous"))
|
||||
help = 'Index format: chapter-n-page-m'
|
||||
|
|
|
@ -34,7 +34,7 @@ def add(name, url):
|
|||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='KeenSpot/' + name,
|
||||
latestUrl=url,
|
||||
url=url,
|
||||
stripUrl=stripUrl,
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
|
|
|
@ -9,23 +9,23 @@ from ..util import tagre
|
|||
|
||||
|
||||
class LasLindas(_BasicScraper):
|
||||
latestUrl = 'http://laslindas.katbox.net/'
|
||||
stripUrl = latestUrl + 'archive/%s/'
|
||||
url = 'http://laslindas.katbox.net/'
|
||||
stripUrl = url + 'archive/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://laslindas\.katbox\.net/wp-content/webcomic/las-lindas/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://laslindas\.katbox\.net/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class Lint(_BasicScraper):
|
||||
latestUrl = 'http://www.purnicellin.com/lint/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.purnicellin.com/lint/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'<img src="(http://www.purnicellin.com/lint/comics/.+?)"')
|
||||
prevSearch = compile(r'\| <a href="([^"]+)" rel="prev">')
|
||||
help = 'Index format: yyyy/mm/dd/num-name'
|
||||
|
||||
|
||||
class LookingForGroup(_BasicScraper):
|
||||
latestUrl = 'http://www.lfgcomic.com/page/latest'
|
||||
url = 'http://www.lfgcomic.com/page/latest'
|
||||
stripUrl = 'http://www.lfgcomic.com/page/%s'
|
||||
imageSearch = compile(r'<img src="(http://newcdn.lfgcomic.com/uploads/comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(/page/\d+)" id="navtop-prev"')
|
||||
|
@ -38,16 +38,16 @@ class LookingForGroup(_BasicScraper):
|
|||
|
||||
|
||||
class LittleGamers(_BasicScraper):
|
||||
latestUrl = 'http://www.little-gamers.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.little-gamers.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://little-gamers\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.little-gamers.com/[^"]+)', before="comic-nav-prev-link"))
|
||||
help = 'Index format: yyyy/mm/dd/name'
|
||||
|
||||
|
||||
class LeastICouldDo(_BasicScraper):
|
||||
latestUrl = 'http://leasticoulddo.com/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://leasticoulddo.com/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.leasticoulddo\.com/wp-content/uploads/\d+/\d+/\d{8}\.\w{1,4})'))
|
||||
prevSearch = compile(r'<a href="(/comic/\d{8})">Previous</a>')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -10,79 +10,79 @@ from ..util import tagre
|
|||
|
||||
# broken links - disable for now
|
||||
class _MadamAndEve(_BasicScraper):
|
||||
latestUrl = 'http://www.madamandeve.co.za/week_of_cartns.php'
|
||||
url = 'http://www.madamandeve.co.za/week_of_cartns.php'
|
||||
stripUrl = None
|
||||
imageSearch = compile(r'<IMG BORDER="0" SRC="(cartoons/me\d{6}\.(gif|jpg))">')
|
||||
prevSearch = compile(r'<a href="(weekend_cartoon.php)"')
|
||||
|
||||
|
||||
class Marilith(_BasicScraper):
|
||||
latestUrl = 'http://www.marilith.com/'
|
||||
stripUrl = latestUrl + 'archive.php?date=%s'
|
||||
url = 'http://www.marilith.com/'
|
||||
stripUrl = url + 'archive.php?date=%s'
|
||||
imageSearch = compile(r'<img src="(comics/.+?)" border')
|
||||
prevSearch = compile(r'<a href="(archive\.php\?date=.+?)"><img border=0 name=previous_day')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class MarryMe(_BasicScraper):
|
||||
latestUrl = 'http://marryme.keenspot.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://marryme.keenspot.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("link", "href", r'(/d/[^"]+)', before="prev"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Meek(_BasicScraper):
|
||||
latestUrl = 'http://www.meekcomic.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.meekcomic.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'meekcomic.com(/comics/.+?)"')
|
||||
prevSearch = compile(r'\s.+?(http://www.meekcomic.com/.+?)".+?Previous<')
|
||||
help = 'Index format: yyyy/mm/dd/ch-p/'
|
||||
|
||||
|
||||
class MegaTokyo(_BasicScraper):
|
||||
latestUrl = 'http://megatokyo.com/'
|
||||
stripUrl = latestUrl + 'strip/%s'
|
||||
url = 'http://megatokyo.com/'
|
||||
stripUrl = url + 'strip/%s'
|
||||
imageSearch = compile(r'"(strips/.+?)"', IGNORECASE)
|
||||
prevSearch = compile(r'"(./strip/\d+?)">Prev')
|
||||
help = 'Index format: nnnn'
|
||||
|
||||
|
||||
class Meiosis(_BasicScraper):
|
||||
latestUrl = 'http://meiosiswebcomic.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://meiosiswebcomic.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://meiosiswebcomic\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://meiosiswebcomic\.com/[^"]+)', after="navi-prev"))
|
||||
help = 'Index format: yyyy/mm/ddmmyyyy'
|
||||
|
||||
|
||||
class MacHall(_BasicScraper):
|
||||
latestUrl = 'http://www.machall.com/'
|
||||
stripUrl = latestUrl + 'view.php?date=%s'
|
||||
url = 'http://www.machall.com/'
|
||||
stripUrl = url + 'view.php?date=%s'
|
||||
imageSearch = compile(r'<img src="(comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)"><img[^>]+?src=\'drop_shadow/previous.gif\'>')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class Melonpool(_BasicScraper):
|
||||
latestUrl = 'http://www.melonpool.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.melonpool.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.melonpool\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.melonpool\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class Misfile(_BasicScraper):
|
||||
latestUrl = 'http://www.misfile.com/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.misfile.com/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(comics/[^']+)", quote="'"))
|
||||
prevSearch = compile(tagre("link", "href", r"([^']+)", quote="'", before="Previous"))
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class MysteriesOfTheArcana(_BasicScraper):
|
||||
latestUrl = 'http://mysteriesofthearcana.com/'
|
||||
stripUrl = latestUrl + 'index.php?action=comics&cid=%s'
|
||||
url = 'http://mysteriesofthearcana.com/'
|
||||
stripUrl = url + 'index.php?action=comics&cid=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(image\.php\?type=com&i=[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(index\.php[^"]+)', after="navprevious"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
|
|
@ -9,23 +9,23 @@ from ..util import tagre
|
|||
|
||||
|
||||
class NamirDeiter(_BasicScraper):
|
||||
latestUrl = 'http://www.namirdeiter.com/'
|
||||
stripUrl = latestUrl + 'comics/index.php?date=%s'
|
||||
url = 'http://www.namirdeiter.com/'
|
||||
stripUrl = url + 'comics/index.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"'?(http://www\.namirdeiter\.com/comics/\d+\.jpg)'?", quote=""))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.namirdeiter\.com/comics/index\.php\?date=\d+)', quote="'")+"Previous")
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class NeoEarth(_BasicScraper):
|
||||
latestUrl = 'http://www.neo-earth.com/NE/'
|
||||
stripUrl = latestUrl + 'index.php?date=%s'
|
||||
url = 'http://www.neo-earth.com/NE/'
|
||||
stripUrl = url + 'index.php?date=%s'
|
||||
imageSearch = compile(r'<img src="(strips/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)">Previous</a>')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class NewAdventuresOfBobbin(_BasicScraper):
|
||||
latestUrl = 'http://www.bobbin-comic.com/bobbin_strips/'
|
||||
url = 'http://www.bobbin-comic.com/bobbin_strips/'
|
||||
imageSearch = compile(tagre("a", "href", r'(\d+\.gif)'))
|
||||
multipleImagesPerStrip = True
|
||||
prevSearch = None
|
||||
|
@ -33,23 +33,23 @@ class NewAdventuresOfBobbin(_BasicScraper):
|
|||
|
||||
|
||||
class NewWorld(_BasicScraper):
|
||||
latestUrl = 'http://www.tfsnewworld.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.tfsnewworld.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(r'<img src="(http://www.tfsnewworld.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="([^"]+)" rel="prev">')
|
||||
help = 'Index format: yyyy/mm/dd/stripn'
|
||||
|
||||
|
||||
class Nicky510(_BasicScraper):
|
||||
latestUrl = 'http://www.nickyitis.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.nickyitis.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.nickyitis\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.nickyitis\.com/comic/[^"]+)', after="Previous"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class NoNeedForBushido(_BasicScraper):
|
||||
latestUrl = 'http://noneedforbushido.com/latest/'
|
||||
url = 'http://noneedforbushido.com/latest/'
|
||||
stripUrl = 'http://noneedforbushido.com/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://noneedforbushido\.com/comics/comic/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://noneedforbushido\.com/[^"]+)', after="previous-comic-link"))
|
||||
|
@ -57,17 +57,17 @@ class NoNeedForBushido(_BasicScraper):
|
|||
|
||||
|
||||
class Nukees(_BasicScraper):
|
||||
latestUrl = 'http://www.nukees.com/'
|
||||
stripUrl = latestUrl + 'd/%s'
|
||||
url = 'http://www.nukees.com/'
|
||||
stripUrl = url + 'd/%s'
|
||||
imageSearch = compile(r'"comic".+?"(/comics/.+?)"')
|
||||
prevSearch = compile(r'"(/d/.+?)".+?previous')
|
||||
help = 'Index format: yyyymmdd.html'
|
||||
|
||||
|
||||
class NekoTheKitty(_BasicScraper):
|
||||
basePath = 'http://www.nekothekitty.net/'
|
||||
stripUrl = basePath + 'comics/%s'
|
||||
starter = bounceStarter(basePath, compile(tagre("a", "href", r'(http://www\.nekothekitty\.net/comics/[^"]+)') +
|
||||
url = 'http://www.nekothekitty.net/'
|
||||
stripUrl = url + 'comics/%s'
|
||||
starter = bounceStarter(url, compile(tagre("a", "href", r'(http://www\.nekothekitty\.net/comics/[^"]+)') +
|
||||
tagre("img", "src", r'http://www\.nekothekitty\.net/files/smallnext.png')))
|
||||
imageSearch = compile(tagre("img", "src", r'(http://(?:img\d+|www)\.smackjeeves\.com/images/uploaded/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.nekothekitty\.net/comics/[^"]+)') +
|
||||
|
@ -76,33 +76,34 @@ class NekoTheKitty(_BasicScraper):
|
|||
|
||||
|
||||
class NichtLustig(_BasicScraper):
|
||||
url = 'http://www.nichtlustig.de/main.html'
|
||||
stripUrl = 'http://static.nichtlustig.de/toondb/%s.html'
|
||||
imageSearch = compile('background-image:url\((http://static\.nichtlustig\.de/comics/full/\d+\.jpg)')
|
||||
prevSearch = compile(tagre("a", "href", r'(http://static\.nichtlustig\.de/toondb/\d+\.html)'))
|
||||
help = 'Index format: yymmdd'
|
||||
starter = indirectStarter('http://www.nichtlustig.de/main.html',
|
||||
starter = indirectStarter(url,
|
||||
compile(tagre("a", "href", r'([^"]*toondb/\d+\.html)')))
|
||||
|
||||
|
||||
class Nodwick(_BasicScraper):
|
||||
latestUrl = 'http://comic.nodwick.com/'
|
||||
stripUrl = latestUrl + "?p=%s"
|
||||
url = 'http://comic.nodwick.com/'
|
||||
stripUrl = url + "?p=%s"
|
||||
imageSearch = compile(tagre("img", "src", r'(http://comic\.nodwick\.com/nodwickstrips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://comic\.nodwick\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: stripnumber'
|
||||
|
||||
|
||||
class NekkoAndJoruba(_BasicScraper):
|
||||
latestUrl = 'http://www.nekkoandjoruba.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.nekkoandjoruba.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(r'<img src="(http://www.nekkoandjoruba.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)">‹</a>')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class NobodyScores(_BasicScraper):
|
||||
latestUrl = 'http://nobodyscores.loosenutstudio.com/'
|
||||
stripUrl = latestUrl + 'index.php?id=%s'
|
||||
url = 'http://nobodyscores.loosenutstudio.com/'
|
||||
stripUrl = url + 'index.php?id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://nobodyscores\.loosenutstudio\.com/comix/[^"]+)'))
|
||||
multipleImagesPerStrip = True
|
||||
prevSearch = compile(r'<a href="(http://nobodyscores\.loosenutstudio\.com/index.php.+?)">the one before </a>')
|
||||
|
|
|
@ -11,12 +11,12 @@ _prevSearch = compile(tagre("a", "href", r'([^"]+)') + "Previous")
|
|||
|
||||
def add(name, shortname):
|
||||
baseUrl = 'http://www.nuklearpower.com/'
|
||||
latestUrl = baseUrl + shortname + '/'
|
||||
url = baseUrl + shortname + '/'
|
||||
classname = 'NuklearPower_%s' % name
|
||||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='NuklearPower/' + name,
|
||||
latestUrl = latestUrl,
|
||||
url = url,
|
||||
stripUrl = baseUrl + '%s',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
|
|
|
@ -10,8 +10,8 @@ from ..scraper import _BasicScraper
|
|||
|
||||
class NineteenNinetySeven(_BasicScraper):
|
||||
name = '1997'
|
||||
latestUrl = 'http://www.1977thecomic.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.1977thecomic.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.1977thecomic\.com/comics-1977/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)')+"Previous")
|
||||
help = 'Index format: yyyy/mm/dd/strip-name'
|
||||
|
|
|
@ -9,25 +9,26 @@ from ..util import tagre
|
|||
|
||||
|
||||
class OctopusPie(_BasicScraper):
|
||||
starter = indirectStarter('http://www.octopuspie.com/',
|
||||
url = 'http://www.octopuspie.com/'
|
||||
starter = indirectStarter(url,
|
||||
compile(tagre("a", "href", r'(http://www\.octopuspie\.com/[^"]+)') +
|
||||
tagre("img", "src", r'http://www\.octopuspie\.com/junk/latest\.png')))
|
||||
stripUrl = 'http://www.octopuspie.com/%s'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.octopuspie\.com/strippy/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.octopuspie\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy-mm-dd/nnn-strip-name'
|
||||
|
||||
|
||||
class OddFish(_BasicScraper):
|
||||
latestUrl = 'http://www.odd-fish.net/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.odd-fish.net/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.odd-fish\.net/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.odd-fish\.net/[^"]+)', after="navi-prev"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class OnTheEdge(_BasicScraper):
|
||||
latestUrl = 'http://ontheedgecomics.com/'
|
||||
url = 'http://ontheedgecomics.com/'
|
||||
stripUrl = 'http://ontheedgecomics.com/comic/%s'
|
||||
imageSearch = compile(r'<img src="(http://ontheedgecomics.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="([^"]+)" rel="prev">')
|
||||
|
@ -35,40 +36,41 @@ class OnTheEdge(_BasicScraper):
|
|||
|
||||
|
||||
class OneQuestion(_BasicScraper):
|
||||
latestUrl = 'http://onequestioncomic.com/'
|
||||
stripUrl = latestUrl + 'comic.php?strip_id=%s'
|
||||
url = 'http://onequestioncomic.com/'
|
||||
stripUrl = url + 'comic.php?strip_id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(istrip_files/strips/\d+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(comic\.php\?strip_id=\d+)') + tagre("img", "src", r'img/arrow_prev\.jpg'))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class OurHomePlanet(_BasicScraper):
|
||||
latestUrl = 'http://gdk.gd-kun.net/'
|
||||
stripUrl = latestUrl + '%s.html'
|
||||
url = 'http://gdk.gd-kun.net/'
|
||||
stripUrl = url + '%s.html'
|
||||
imageSearch = compile(r'<img src="(pages/comic.+?)"')
|
||||
prevSearch = compile(r'coords="50,18,95,65".+?href="(.+?\.html)".+?alt=')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class OkCancel(_BasicScraper):
|
||||
stripUrl = 'http://okcancel.com/comic/%s.html'
|
||||
url = 'http://okcancel.com/'
|
||||
stripUrl = url + 'comic/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://okcancel\.com/strips/okcancel\d{8}\.gif)'))
|
||||
prevSearch = compile(tagre("div", "class", "previous") + tagre("a", "href", r'(http://okcancel\.com/comic/\d{1,4}\.html)'))
|
||||
starter = indirectStarter('http://okcancel.com/', prevSearch)
|
||||
starter = indirectStarter(url, prevSearch)
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Oglaf(_BasicScraper):
|
||||
latestUrl = 'http://oglaf.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://oglaf.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(/media/comic/[^"]+)', before="strip"))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + tagre("div", "id", "pvs"))
|
||||
help = 'Index format: stripname/nn'
|
||||
|
||||
|
||||
class OverCompensating(_BasicScraper):
|
||||
latestUrl = 'http://www.overcompensating.com/'
|
||||
stripUrl = latestUrl + 'posts/%s.html'
|
||||
url = 'http://www.overcompensating.com/'
|
||||
stripUrl = url + 'posts/%s.html'
|
||||
imageSearch = compile(r'<img src="(/comics/.+?)"')
|
||||
prevSearch = compile(r'"><a href="(.+?)"[^>]+?> \<\- </a>')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -9,23 +9,23 @@ from ..util import tagre
|
|||
|
||||
|
||||
class PandyLand(_BasicScraper):
|
||||
latestUrl = 'http://pandyland.net/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://pandyland.net/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://pandyland\.net/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://pandyland\.net/\d+/)', after="prev"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class PartiallyClips(_BasicScraper):
|
||||
latestUrl = 'http://partiallyclips.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://partiallyclips.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://partiallyclips\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://partiallyclips\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
||||
|
||||
class PastelDefender(_BasicScraper):
|
||||
latestUrl = 'http://www.pasteldefender.com/coverbackcover.html'
|
||||
url = 'http://www.pasteldefender.com/coverbackcover.html'
|
||||
stripUrl = 'http://www.pasteldefender.com/%s.html'
|
||||
imageSearch = compile(r'<IMG SRC="(images/.+?)" WIDTH="742"')
|
||||
prevSearch = compile(r'<A HREF="([^"]+)"><IMG SRC="images/back\.gif"')
|
||||
|
@ -33,29 +33,29 @@ class PastelDefender(_BasicScraper):
|
|||
|
||||
|
||||
class PebbleVersion(_BasicScraper):
|
||||
latestUrl = 'http://www.pebbleversion.com/'
|
||||
stripUrl = latestUrl + 'Archives/Strip%s.html'
|
||||
url = 'http://www.pebbleversion.com/'
|
||||
stripUrl = url + 'Archives/Strip%s.html'
|
||||
imageSearch = compile(r'<img src="(ComicStrips/.+?|../ComicStrips/.+?)"')
|
||||
prevSearch = compile(r'<a href="((?!.+?">First Comic)Archives/Strip.+?|(?=.+?">Previous Comic)(?!.+?">First Comic)Strip.+?)"')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class PennyAndAggie(_BasicScraper):
|
||||
baseUrl = 'http://www.pennyandaggie.com/'
|
||||
stripUrl = baseUrl + 'index.php?p=%s'
|
||||
url = 'http://www.pennyandaggie.com/'
|
||||
stripUrl = url + 'index.php?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.pennyandaggie\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r"(index\.php\?p=\d+)", quote="'") +
|
||||
tagre("img", "src", r'http://pennyandaggie\.com/images/previous_day\.gif', quote=""))
|
||||
starter = indirectStarter(baseUrl, prevSearch)
|
||||
starter = indirectStarter(url, prevSearch)
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class PennyArcade(_BasicScraper):
|
||||
baseUrl = 'http://penny-arcade.com/comic/'
|
||||
starter = bounceStarter(baseUrl,
|
||||
url = 'http://penny-arcade.com/comic/'
|
||||
starter = bounceStarter(url,
|
||||
compile(tagre("a", "href", r'(http://penny-arcade\.com/comic/[^"]+)', before="btnNext"))
|
||||
)
|
||||
stripUrl = baseUrl + '%s'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://art\.penny-arcade\.com/photos/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://penny-arcade\.com/comic/[^"]+)', before="btnPrev"))
|
||||
help = 'Index format: yyyy/mm/dd'
|
||||
|
@ -67,32 +67,33 @@ class PennyArcade(_BasicScraper):
|
|||
|
||||
|
||||
class PeppermintSaga(_BasicScraper):
|
||||
latestUrl = 'http://www.pepsaga.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.pepsaga.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.pepsaga\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.pepsaga\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class PicPakDog(_BasicScraper):
|
||||
latestUrl = 'http://www.picpak.net/'
|
||||
stripUrl = latestUrl + 'comics/%s/'
|
||||
url = 'http://www.picpak.net/'
|
||||
stripUrl = url + 'comics/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.picpak\.net/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.picpak\.net/comics/[^"]+)', after="navi-prev"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
||||
|
||||
class Pixel(_BasicScraper):
|
||||
latestUrl = 'http://pixelcomic.net/'
|
||||
stripUrl = latestUrl + '%s.php'
|
||||
url = 'http://pixelcomic.net/'
|
||||
stripUrl = url + '%s.php'
|
||||
imageSearch = compile(tagre("img", "src", r'(\d+\.png)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://pixelcomic\.net/\d+\.php)', before="prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class PiledHigherAndDeeper(_BasicScraper):
|
||||
starter = bounceStarter('http://www.phdcomics.com/comics/archive.php', compile(r'<a href=(archive\.php\?comicid=\d+)><img height=52 width=49 src=images/next_button\.gif border=0 align=middle>'))
|
||||
stripUrl = 'http://www.phdcomics.com/comics/archive.php?comicid=%s'
|
||||
url = 'http://www.phdcomics.com/comics/archive.php'
|
||||
starter = bounceStarter(url, compile(r'<a href=(archive\.php\?comicid=\d+)><img height=52 width=49 src=images/next_button\.gif border=0 align=middle>'))
|
||||
stripUrl = url + '?comicid=%s'
|
||||
imageSearch = compile(r'<img src=(http://www\.phdcomics\.com/comics/archive/phd\d+s?\.gif)')
|
||||
prevSearch = compile(r'<a href=(archive\.php\?comicid=\d+)><img height=52 width=49 src=images/prev_button\.gif border=0 align=middle>')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
@ -100,59 +101,59 @@ class PiledHigherAndDeeper(_BasicScraper):
|
|||
|
||||
|
||||
class Pimpette(_BasicScraper):
|
||||
latestUrl = 'http://pimpette.ca/'
|
||||
stripUrl = latestUrl + 'index.php?date=%s'
|
||||
url = 'http://pimpette.ca/'
|
||||
stripUrl = url + 'index.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(strips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(index\.php\?date=\d+)') + "Previous")
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class Precocious(_BasicScraper):
|
||||
baseUrl = 'http://www.precociouscomic.com/'
|
||||
starter = indirectStarter(baseUrl,
|
||||
url = 'http://www.precociouscomic.com/'
|
||||
starter = indirectStarter(url,
|
||||
compile(tagre("a", "href", r'(/archive/comic/[^"]+)') + tagre("img", "src", r"/templates/precocious_main/images/next_arrow\.png"))
|
||||
)
|
||||
stripUrl = baseUrl + 'archive/comic/%s'
|
||||
stripUrl = url + 'archive/comic/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/\d+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archive/comic/[^"]+)') + tagre("img", "src", r"/templates/precocious_main/images/back_arrow\.png"))
|
||||
help = 'Index format: yyyy/mm/dd'
|
||||
|
||||
|
||||
class PvPonline(_BasicScraper):
|
||||
latestUrl = 'http://pvponline.com/comic'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://pvponline.com/comic'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://newcdn\.pvponline\.com/img/comic/pvp[^"]+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://pvponline\.com/comic/[^"]+)', after="Previous"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
||||
|
||||
class ProperBarn(_BasicScraper):
|
||||
latestUrl = 'http://www.nitrocosm.com/go/gag/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.nitrocosm.com/go/gag/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://content\.nitrocosm\.com/gag/\d+\.[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.nitrocosm\.com/go/gag/\d+/)', after="nav_btn_previous"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class PunksAndNerds(_BasicScraper):
|
||||
latestUrl = 'http://www.punksandnerds.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.punksandnerds.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.punksandnerds\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.punksandnerds\.com/\?p=\d+)', after="navi-prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class PunksAndNerdsOld(_BasicScraper):
|
||||
latestUrl = 'http://original.punksandnerds.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://original.punksandnerds.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(r' src="(/comics/.+?)"')
|
||||
prevSearch = compile(r'><strong><a href="(.+?)"[^>]+?><img[^>]+?src="/previouscomic.gif">')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class PlanescapeSurvival(_BasicScraper):
|
||||
latestUrl = 'http://planescapecomic.com/'
|
||||
stripUrl = latestUrl + '%s.html'
|
||||
url = 'http://planescapecomic.com/'
|
||||
stripUrl = url + '%s.html'
|
||||
imageSearch = compile(r'src="(comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)"><img alt="Previous" ')
|
||||
help = 'Index format: nnn'
|
||||
|
|
|
@ -14,7 +14,7 @@ def add(name, baseUrl, param="date"):
|
|||
'[^<]+Previous' + ')')
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='PensAndTales/' + name,
|
||||
latestUrl = baseUrl,
|
||||
url = baseUrl,
|
||||
stripUrl = baseUrl + '?' + param + '=%s',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
|
|
|
@ -11,11 +11,11 @@ _prevSearch = compile(tagre("a", "href", r'(http://[a-z0-9]+\.petitesymphony\.co
|
|||
|
||||
def add(name):
|
||||
classname = 'PetiteSymphony_%s' % name.capitalize()
|
||||
latestUrl = 'http://%s.petitesymphony.com/' % name
|
||||
url = 'http://%s.petitesymphony.com/' % name
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='PetiteSymphony/' + name.capitalize(),
|
||||
latestUrl = latestUrl,
|
||||
stripUrl = latestUrl + 'comic/%s',
|
||||
url = url,
|
||||
stripUrl = url + 'comic/%s',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
help='Index format: named number'
|
||||
|
|
|
@ -8,16 +8,16 @@ from ..util import tagre
|
|||
|
||||
|
||||
class QuestionableContent(_BasicScraper):
|
||||
latestUrl = 'http://www.questionablecontent.net/'
|
||||
stripUrl = latestUrl + 'view.php?comic=%s'
|
||||
url = 'http://www.questionablecontent.net/'
|
||||
stripUrl = url + 'view.php?comic=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+/comics/[^"]+)', before="strip"))
|
||||
prevSearch = compile(tagre("a", "href", r'(view\.php\?comic=\d+)') + 'Previous')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class Qwantz(_BasicScraper):
|
||||
latestUrl = 'http://www.qwantz.com/index.php'
|
||||
stripUrl = latestUrl + '?comic=%s'
|
||||
url = 'http://www.qwantz.com/index.php'
|
||||
stripUrl = url + '?comic=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.qwantz\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.qwantz\.com/index\.php\?comic=\d+)', before="prev"))
|
||||
help = 'Index format: n'
|
||||
|
|
|
@ -9,39 +9,40 @@ from ..util import tagre
|
|||
|
||||
|
||||
class RadioactivePanda(_BasicScraper):
|
||||
latestUrl = 'http://www.radioactivepanda.com/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://www.radioactivepanda.com/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(r'<img src="(/Assets/.*?)".+?"comicimg"')
|
||||
prevSearch = compile(r'<a href="(/comic/.*?)".+?previous_btn')
|
||||
help = 'Index format: n (no padding)'
|
||||
|
||||
|
||||
class RealLife(_BasicScraper):
|
||||
latestUrl = 'http://www.reallifecomics.com/'
|
||||
stripUrl = latestUrl + 'archive/%s.html'
|
||||
url = 'http://www.reallifecomics.com/'
|
||||
stripUrl = url + 'archive/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archive/\d+.html)') + tagre("img", "src", r'/images/nav_prev\.png'))
|
||||
help = 'Index format: yymmdd)'
|
||||
|
||||
|
||||
class RedString(_BasicScraper):
|
||||
latestUrl = 'http://www.redstring.strawberrycomics.com/'
|
||||
stripUrl = latestUrl + 'index.php?id=%s'
|
||||
url = 'http://www.redstring.strawberrycomics.com/'
|
||||
stripUrl = url + 'index.php?id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/index\.php\?id=\d+)', after="prev"))
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class Roza(_BasicScraper):
|
||||
latestUrl = 'http://www.junglestudio.com/roza/index.php'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.junglestudio.com/roza/index.php'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(r'<img src="(pages/.+?)"')
|
||||
prevSearch = compile(r'<a href="(index.php\?date=.+?)">[^>].+?navtable_01.gif')
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class RedMeat(_BasicScraper):
|
||||
starter = bounceStarter('http://www.redmeat.com/redmeat/current/index.html', compile(r'<a href="(\.\./\d{4}-\d{2}-\d{2}/index\.html)">next</a>'))
|
||||
url = 'http://www.redmeat.com/redmeat/current/index.html'
|
||||
starter = bounceStarter(url, compile(r'<a href="(\.\./\d{4}-\d{2}-\d{2}/index\.html)">next</a>'))
|
||||
stripUrl = 'http://www.redmeat.com/redmeat/%s/index.html'
|
||||
imageSearch = compile(r'<img src="(index-1\.gif)" width="\d+" height="\d+" [^>]*>')
|
||||
prevSearch = compile(r'<a href="(\.\./\d{4}-\d{2}-\d{2}/index\.html)">previous</a>')
|
||||
|
|
|
@ -10,15 +10,15 @@ from ..util import tagre
|
|||
|
||||
|
||||
class SailorsunOrg(_BasicScraper):
|
||||
latestUrl = 'http://sailorsun.org/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://sailorsun.org/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://sailorsun\.org/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://sailorsun\.org/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class SamAndFuzzy(_BasicScraper):
|
||||
latestUrl = 'http://www.samandfuzzy.com/'
|
||||
url = 'http://www.samandfuzzy.com/'
|
||||
stripUrl = 'http://samandfuzzy.com/%s'
|
||||
imageSearch = compile(r'(/comics/.+?)" alt')
|
||||
prevSearch = compile(r'"><a href="(.+?)"><img src="imgint/nav_prev.gif"')
|
||||
|
@ -26,24 +26,24 @@ class SamAndFuzzy(_BasicScraper):
|
|||
|
||||
|
||||
class SarahZero(_BasicScraper):
|
||||
latestUrl = 'http://www.sarahzero.com/'
|
||||
stripUrl = latestUrl + 'sz_%s.html'
|
||||
url = 'http://www.sarahzero.com/'
|
||||
stripUrl = url + 'sz_%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(z_(?:spreads|decoy)/sz_[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(sz_\d+\.html)') + tagre("img", "src", r'z_site/sz_05_nav\.gif'))
|
||||
help = 'Index format: nnnn'
|
||||
|
||||
|
||||
class ScaryGoRound(_BasicScraper):
|
||||
latestUrl = 'http://www.scarygoround.com/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.scarygoround.com/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(strips/\d+\.png)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?date=\d+)') + "Previous")
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class SchlockMercenary(_BasicScraper):
|
||||
latestUrl = 'http://www.schlockmercenary.com/'
|
||||
stripUrl = latestUrl + '%s'
|
||||
url = 'http://www.schlockmercenary.com/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://static\.schlockmercenary\.com/comics/[^"]+)'))
|
||||
multipleImagesPerStrip = True
|
||||
prevSearch = compile(tagre("a", "href", r'(/\d+-\d+-\d+)', quote="'", after="nav-previous"))
|
||||
|
@ -51,16 +51,16 @@ class SchlockMercenary(_BasicScraper):
|
|||
|
||||
|
||||
class SchoolBites(_BasicScraper):
|
||||
latestUrl = 'http://schoolbites.net/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://schoolbites.net/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.schoolbites\.net/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://schoolbites\.net/d/\d+\.html)', after="prev"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class SequentialArt(_BasicScraper):
|
||||
latestUrl = 'http://www.collectedcurios.com/sequentialart.php'
|
||||
stripUrl = latestUrl + '?s=%s'
|
||||
url = 'http://www.collectedcurios.com/sequentialart.php'
|
||||
stripUrl = url + '?s=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+)', before="strip"))
|
||||
prevSearch = compile(tagre("a", "href", r'(/sequentialart\.php\?s=\d+)')
|
||||
+ tagre("img", "src", "Nav_BackOne\.gif"))
|
||||
|
@ -68,16 +68,16 @@ class SequentialArt(_BasicScraper):
|
|||
|
||||
|
||||
class Sheldon(_BasicScraper):
|
||||
latestUrl = 'http://www.sheldoncomics.com/'
|
||||
stripUrl = latestUrl + 'archive/%s.html'
|
||||
url = 'http://www.sheldoncomics.com/'
|
||||
stripUrl = url + 'archive/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/strips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archive/\d+\.html)', after="sidenav-prev"))
|
||||
help = 'Index format: yymmdd'
|
||||
|
||||
|
||||
class Shivae(_BasicScraper):
|
||||
latestUrl = 'http://shivae.net/'
|
||||
stripUrl = latestUrl + 'blog/%s/'
|
||||
url = 'http://shivae.net/'
|
||||
stripUrl = url + 'blog/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://shivae\.net/files/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://shivae\.net/blog/[^"]+)', after="Previous"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
@ -85,8 +85,8 @@ class Shivae(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _Shortpacked(_BasicScraper):
|
||||
latestUrl = 'http://www.shortpacked.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.shortpacked.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.shortpacked\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.shortpacked\.com/\d+/comic/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/comic/book-nn/mm-name1/name2'
|
||||
|
@ -94,32 +94,32 @@ class _Shortpacked(_BasicScraper):
|
|||
|
||||
class SinFest(_BasicScraper):
|
||||
name = 'KeenSpot/SinFest'
|
||||
latestUrl = 'http://www.sinfest.net/'
|
||||
stripUrl = latestUrl + 'archive_page.php?comicID=%s'
|
||||
url = 'http://www.sinfest.net/'
|
||||
stripUrl = url + 'archive_page.php?comicID=%s'
|
||||
imageSearch = compile(r'<img src=".+?(/comikaze/comics/.+?)"')
|
||||
prevSearch = compile(r'(/archive_page.php\?comicID=.+?)".+?prev_a')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class SlightlyDamned(_BasicScraper):
|
||||
latestUrl = 'http://www.sdamned.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.sdamned.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.sdamned\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.sdamned\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/number'
|
||||
|
||||
|
||||
class SluggyFreelance(_BasicScraper):
|
||||
latestUrl = 'http://www.sluggy.com/'
|
||||
stripUrl = latestUrl + 'comics/archives/daily/%s'
|
||||
url = 'http://www.sluggy.com/'
|
||||
stripUrl = url + 'comics/archives/daily/%s'
|
||||
imageSearch = compile(r'<img src="(/images/comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)"[^>]+?><span class="ui-icon ui-icon-seek-prev">')
|
||||
help = 'Index format: yymmdd'
|
||||
|
||||
|
||||
class SodiumEyes(_BasicScraper):
|
||||
latestUrl = 'http://sodiumeyes.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://sodiumeyes.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://sodiumeyes\.com/comic/[^ ]+)', quote=""))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://sodiumeyes\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
@ -127,7 +127,7 @@ class SodiumEyes(_BasicScraper):
|
|||
|
||||
class Sorcery101(_BasicScraper):
|
||||
baseUrl = 'http://www.sorcery101.net/'
|
||||
latestUrl = baseUrl + 'sorcery-101/'
|
||||
url = baseUrl + 'sorcery-101/'
|
||||
stripUrl = baseUrl + 'sorcery101/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.sorcery101\.net/comics/sorcery101/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.sorcery101\.net/sorcery101/[^"]+)', after="previous-comic-link"))
|
||||
|
@ -136,7 +136,7 @@ class Sorcery101(_BasicScraper):
|
|||
|
||||
class SpareParts(_BasicScraper):
|
||||
baseUrl = 'http://www.sparepartscomics.com/'
|
||||
latestUrl = baseUrl + 'comics/?date=20080328'
|
||||
url = baseUrl + 'comics/?date=20080328'
|
||||
stripUrl = baseUrl + 'comics/index.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.sparepartscomics\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(index\.php\?date=\d+)', quote="'") + "Previous Comic")
|
||||
|
@ -144,16 +144,16 @@ class SpareParts(_BasicScraper):
|
|||
|
||||
|
||||
class Spinnerette(_BasicScraper):
|
||||
latestUrl = 'http://www.spinnyverse.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.spinnyverse.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.spinnyverse\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.spinnyverse\.com/[^"]+)', before="Previous"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class SPQRBlues(_BasicScraper):
|
||||
latestUrl = 'http://spqrblues.com/IV/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://spqrblues.com/IV/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://spqrblues\.com/IV/comics/\d+\.png)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://spqrblues\.com/IV/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: number'
|
||||
|
@ -161,8 +161,8 @@ class SPQRBlues(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _StationV3(_BasicScraper):
|
||||
latestUrl = 'http://www.stationv3.com/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.stationv3.com/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.stationv3\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.stationv3\.com/d/\d+\.html)') +
|
||||
tagre("img", "src", r'http://www\.stationv3\.com/images/previous\.gif'))
|
||||
|
@ -170,32 +170,32 @@ class _StationV3(_BasicScraper):
|
|||
|
||||
|
||||
class Stubble(_BasicScraper):
|
||||
latestUrl = 'http://stubblecomics.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://stubblecomics.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://stubblecomics\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://stubblecomics\.com/\?p=\d+)', after="navi-prev"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class StrawberryDeathCake(_BasicScraper):
|
||||
latestUrl = 'http://strawberrydeathcake.com/'
|
||||
stripUrl = latestUrl + 'archive/%s/'
|
||||
url = 'http://strawberrydeathcake.com/'
|
||||
stripUrl = url + 'archive/%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://strawberrydeathcake\.com/wp-content/webcomic/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://strawberrydeathcake\.com/archive/[^"]+)', after="previous"))
|
||||
help = 'Index format: stripname'
|
||||
|
||||
|
||||
class SuburbanTribe(_BasicScraper):
|
||||
latestUrl = 'http://www.pixelwhip.com/'
|
||||
stripUrl = latestUrl + '?p=%s'
|
||||
url = 'http://www.pixelwhip.com/'
|
||||
stripUrl = url + '?p=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.pixelwhip\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.pixelwhip\.com/\?p=\d+)', after="prev"))
|
||||
help = 'Index format: nnnn'
|
||||
|
||||
|
||||
class SomethingPositive(_BasicScraper):
|
||||
latestUrl = 'http://www.somethingpositive.net/'
|
||||
stripUrl = latestUrl + 'sp%s.shtml'
|
||||
url = 'http://www.somethingpositive.net/'
|
||||
stripUrl = url + 'sp%s.shtml'
|
||||
imageSearch = compile(tagre("img", "src", r'(sp\d+\.png)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(sp\d+\.shtml)') +
|
||||
"(?:" + tagre("img", "src", r'images/previous\.gif') + "|Previous)")
|
||||
|
@ -204,11 +204,12 @@ class SomethingPositive(_BasicScraper):
|
|||
|
||||
class SexyLosers(_BasicScraper):
|
||||
adult = True
|
||||
stripUrl = 'http://www.sexylosers.com/%s.html'
|
||||
url = 'http://www.sexylosers.com/'
|
||||
stripUrl = url + '%s.html'
|
||||
imageSearch = compile(r'<img src\s*=\s*"\s*(comics/[\w\.]+?)"', IGNORECASE)
|
||||
prevSearch = compile(r'<a href="(/\d{3}\.\w+?)"><font color = FFAAAA><<', IGNORECASE)
|
||||
help = 'Index format: nnn'
|
||||
starter = indirectStarter('http://www.sexylosers.com/',
|
||||
starter = indirectStarter(url,
|
||||
compile(r'SEXY LOSERS <A HREF="(.+?)">Latest SL Comic \(#\d+\)</A>', IGNORECASE))
|
||||
|
||||
@classmethod
|
||||
|
@ -219,7 +220,7 @@ class SexyLosers(_BasicScraper):
|
|||
|
||||
|
||||
class StarCrossdDestiny(_BasicScraper):
|
||||
latestUrl = 'http://www.starcrossd.net/comic.html'
|
||||
url = 'http://www.starcrossd.net/comic.html'
|
||||
stripUrl = 'http://www.starcrossd.net/archives/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.starcrossd\.net/(?:ch1|strips|book2)/[^"]+)'))
|
||||
prevSearch = compile(r'<a href="(http://www\.starcrossd\.net/(?:ch1/)?archives/\d+\.html)"[^>]*"[^"]*"[^>]*>prev', IGNORECASE)
|
||||
|
@ -238,26 +239,26 @@ class StarCrossdDestiny(_BasicScraper):
|
|||
|
||||
|
||||
class Spamusement(_BasicScraper):
|
||||
stripUrl = 'http://spamusement.com/index.php/comics/view/%s'
|
||||
url = 'http://spamusement.com/'
|
||||
stripUrl = url + 'index.php/comics/view/%s'
|
||||
imageSearch = compile(r'<img src="(http://spamusement.com/gfx/\d+\..+?)"', IGNORECASE)
|
||||
prevSearch = compile(r'<a href="(http://spamusement.com/index.php/comics/view/.+?)">', IGNORECASE)
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
starter = indirectStarter('http://spamusement.com/', prevSearch)
|
||||
starter = indirectStarter(url, prevSearch)
|
||||
|
||||
|
||||
# XXX disallowed by robots.txt
|
||||
class _StrangeCandy(_BasicScraper):
|
||||
latestUrl = 'http://www.strangecandy.net/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.strangecandy.net/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/\d+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/\d+\.html)') + tagre("img", "alt", "Previous comic"))
|
||||
help = 'Index format: yyyyddmm'
|
||||
|
||||
|
||||
class SMBC(_BasicScraper):
|
||||
latestUrl = 'http://www.smbc-comics.com/'
|
||||
stripUrl = latestUrl + 'index.php?db=comics&id=%s'
|
||||
url = 'http://www.smbc-comics.com/'
|
||||
stripUrl = url + 'index.php?db=comics&id=%s'
|
||||
imageSearch = compile(r'<img src=\'(.+?\d{8}.\w{1,4})\'>')
|
||||
prevSearch = compile(r'131,13,216,84"\n\s+href="(.+?)#comic"\n>', MULTILINE)
|
||||
help = 'Index format: nnnn'
|
||||
|
|
|
@ -50,6 +50,7 @@ def add(name, url, description, adult, bounce):
|
|||
globals()[classname] = make_scraper(classname,
|
||||
name = 'SmackJeeves/' + name,
|
||||
adult = adult,
|
||||
url = url,
|
||||
starter = _starter,
|
||||
prevUrlModifier = lambda cls, url: modifier(url),
|
||||
stripUrl = url + '%s/',
|
||||
|
|
|
@ -15,7 +15,7 @@ def add(name, host):
|
|||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='SnafuComics/%s' % name,
|
||||
latestUrl = baseUrl,
|
||||
url = baseUrl,
|
||||
stripUrl = baseUrl + '?comic_id=%s',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
|
|
|
@ -9,23 +9,23 @@ from ..util import tagre
|
|||
|
||||
|
||||
class TheDevilsPanties(_BasicScraper):
|
||||
latestUrl = 'http://thedevilspanties.com/'
|
||||
stripUrl = latestUrl + 'archives/%s'
|
||||
url = 'http://thedevilspanties.com/'
|
||||
stripUrl = url + 'archives/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.thedevilspanties\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/archives/\d+)', after="Previous"))
|
||||
help = 'Index format: number'
|
||||
|
||||
|
||||
class TheNoob(_BasicScraper):
|
||||
latestUrl = 'http://www.thenoobcomic.com/index.php'
|
||||
stripUrl = latestUrl + '?pos=%s'
|
||||
url = 'http://www.thenoobcomic.com/index.php'
|
||||
stripUrl = url + '?pos=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/headquarters/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?pos=\d+)', before="comic_nav_previous_button"))
|
||||
help = 'Index format: nnnn'
|
||||
|
||||
|
||||
class TheOrderOfTheStick(_BasicScraper):
|
||||
latestUrl = 'http://www.giantitp.com/comics/oots0863.html'
|
||||
url = 'http://www.giantitp.com/comics/oots0863.html'
|
||||
stripUrl = 'http://www.giantitp.com/comics/oots%s.html'
|
||||
imageSearch = compile(r'<IMG src="(/comics/images/[^"]+)">')
|
||||
prevSearch = compile(r'<A href="(/comics/oots\d{4}\.html)"><IMG src="/Images/redesign/ComicNav_Back.gif"')
|
||||
|
@ -38,7 +38,7 @@ class TheOrderOfTheStick(_BasicScraper):
|
|||
|
||||
|
||||
class TheParkingLotIsFull(_BasicScraper):
|
||||
latestUrl = 'http://plif.courageunfettered.com/archive/arch2002.htm'
|
||||
url = 'http://plif.courageunfettered.com/archive/arch2002.htm'
|
||||
stripUrl = 'http://plif.courageunfettered.com/archive/arch%s.htm'
|
||||
imageSearch = compile(r'<td align="center"><A TARGET=_parent HREF="(wc\d+\..+?)">')
|
||||
multipleImagesPerStrip = True
|
||||
|
@ -47,8 +47,8 @@ class TheParkingLotIsFull(_BasicScraper):
|
|||
|
||||
|
||||
class TheWotch(_BasicScraper):
|
||||
latestUrl = 'http://www.thewotch.com/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.thewotch.com/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(r"<img.+?src='(comics/.+?)'")
|
||||
prevSearch = compile(r"<link rel='Previous' href='(/\?date=\d+-\d+-\d+)'")
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
@ -56,7 +56,7 @@ class TheWotch(_BasicScraper):
|
|||
|
||||
class ThunderAndLightning(_BasicScraper):
|
||||
baseUrl = 'http://www.talcomic.com/wp/'
|
||||
latestUrl = baseUrl + '?latestcomic'
|
||||
url = baseUrl + '?latestcomic'
|
||||
stripUrl = baseUrl + '%s/'
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.talcomic\.com/wp/[^"]+)', after="prev"))
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.talcomic\.com/wp/comics/[^"]+)'))
|
||||
|
@ -64,8 +64,8 @@ class ThunderAndLightning(_BasicScraper):
|
|||
|
||||
|
||||
class TinyKittenTeeth(_BasicScraper):
|
||||
latestUrl = 'http://www.tinykittenteeth.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.tinykittenteeth.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.tinykittenteeth\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)', after="Previous"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname (unpadded)'
|
||||
|
@ -73,24 +73,24 @@ class TinyKittenTeeth(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _TwoLumps(_BasicScraper):
|
||||
latestUrl = 'http://www.twolumps.net/'
|
||||
stripUrl = latestUrl + 'd/%s.html'
|
||||
url = 'http://www.twolumps.net/'
|
||||
stripUrl = url + 'd/%s.html'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/d/\d+\.html)', after="prev"))
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
||||
|
||||
class TwoTwoOneFour(_BasicScraper):
|
||||
latestUrl = 'http://www.nitrocosm.com/go/2214_classic/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.nitrocosm.com/go/2214_classic/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://content\.nitrocosm\.com/[^"]+)', before="gallery_display"))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.nitrocosm\.com/go/2214_classic/\d+/)', after="Previous"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
||||
|
||||
class TheWhiteboard(_BasicScraper):
|
||||
latestUrl = 'http://www.the-whiteboard.com/'
|
||||
stripUrl = latestUrl + 'auto%s.html'
|
||||
url = 'http://www.the-whiteboard.com/'
|
||||
stripUrl = url + 'auto%s.html'
|
||||
imageSearch = compile(r'<img SRC="(autotwb\d{1,4}.+?|autowb\d{1,4}.+?)">', IGNORECASE)
|
||||
prevSearch = compile(r' <a href="(.+?)">previous</a>', IGNORECASE)
|
||||
help = 'Index format: twb or wb + n wg. twb1000'
|
||||
|
@ -98,24 +98,24 @@ class TheWhiteboard(_BasicScraper):
|
|||
|
||||
class HMHigh(_BasicScraper):
|
||||
name = 'TheFallenAngel/HMHigh'
|
||||
latestUrl = 'http://www.thefallenangel.co.uk/hmhigh/'
|
||||
stripUrl = latestUrl + '?id=%s'
|
||||
url = 'http://www.thefallenangel.co.uk/hmhigh/'
|
||||
stripUrl = url + '?id=%s'
|
||||
imageSearch = compile(r'<img src="(http://www.thefallenangel.co.uk/hmhigh/img/comic/.+?)"')
|
||||
prevSearch = compile(r' <a href="(http://www.thefallenangel.co.uk/.+?)" title=".+?">Prev</a>')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class TheOuterQuarter(_BasicScraper):
|
||||
latestUrl = 'http://theouterquarter.com/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://theouterquarter.com/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(r'<img src="(http://theouterquarter.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<div class="nav-previous"><a href="([^"]+)" rel="prev">')
|
||||
help = 'Index format: nnn'
|
||||
|
||||
|
||||
class TracyAndTristan(_BasicScraper):
|
||||
latestUrl = 'http://tandt.thecomicseries.com/'
|
||||
stripUrl = latestUrl + 'comics/%s'
|
||||
url = 'http://tandt.thecomicseries.com/'
|
||||
stripUrl = url + 'comics/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://tandt\.thecomicseries\.com/images/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/comics/\d+)', after="prev"))
|
||||
help = 'Index format: number'
|
||||
|
|
|
@ -10,16 +10,17 @@ from ..util import getQueryParams, tagre
|
|||
|
||||
|
||||
class Undertow(_BasicScraper):
|
||||
stripUrl = 'http://undertow.dreamshards.org/%s'
|
||||
url = 'http://undertow.dreamshards.org/'
|
||||
stripUrl = url + '%s'
|
||||
imageSearch = compile(tagre("img", "src", r'([^"]+\.jpg)'))
|
||||
prevSearch = compile(r'href="(.+?)".+?teynpoint')
|
||||
help = 'Index format: good luck !'
|
||||
starter = indirectStarter('http://undertow.dreamshards.org/',
|
||||
starter = indirectStarter(url,
|
||||
compile(r'href="(.+?)".+?Most recent page'))
|
||||
|
||||
|
||||
class UnicornJelly(_BasicScraper):
|
||||
latestUrl = 'http://unicornjelly.com/uni666.html'
|
||||
url = 'http://unicornjelly.com/uni666.html'
|
||||
stripUrl = 'http://unicornjelly.com/uni%s.html'
|
||||
imageSearch = compile(r'</TABLE>(?:<FONT COLOR="BLACK">)?<IMG SRC="(images/[^"]+)" WIDTH=')
|
||||
prevSearch = compile(r'<A HREF="(uni\d{3}[bcs]?\.html)">(<FONT COLOR="BLACK">)?<IMG SRC="images/back00\.gif"')
|
||||
|
@ -28,8 +29,9 @@ class UnicornJelly(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _UserFriendly(_BasicScraper):
|
||||
starter = bounceStarter('http://ars.userfriendly.org/cartoons/?mode=classic', compile(r'<area shape="rect" href="(/cartoons/\?id=\d{8}&mode=classic)" coords="[\d, ]+?" alt="">'))
|
||||
stripUrl = 'http://ars.userfriendly.org/cartoons/?id=%s&mode=classic'
|
||||
url = 'http://ars.userfriendly.org/cartoons/?mode=classic'
|
||||
stripUrl = url + '&id=%s'
|
||||
starter = bounceStarter(url, compile(r'<area shape="rect" href="(/cartoons/\?id=\d{8}&mode=classic)" coords="[\d, ]+?" alt="">'))
|
||||
imageSearch = compile(r'<img border="0" src="\s*(http://www.userfriendly.org/cartoons/archives/\d{2}\w{3}/.+?\.gif)"')
|
||||
prevSearch = compile(r'<area shape="rect" href="(/cartoons/\?id=\d{8}&mode=classic)" coords="[\d, ]+?" alt="Previous Cartoon">')
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -17,7 +17,7 @@ def parse_strdate(strdate):
|
|||
_imageSearch = compile(tagre("img", "src", r'(http://assets\.amuniversal\.com/[^"]+)') + r'\s+<h4>published')
|
||||
|
||||
def add(name, shortname):
|
||||
latestUrl = 'http://www.universaluclick.com%s' % shortname
|
||||
url = 'http://www.universaluclick.com%s' % shortname
|
||||
classname = 'Universal_%s' % name
|
||||
|
||||
@classmethod
|
||||
|
@ -35,8 +35,8 @@ def add(name, shortname):
|
|||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name='Universal/' + name,
|
||||
latestUrl = latestUrl,
|
||||
stripUrl = latestUrl + '%s/',
|
||||
url = url,
|
||||
stripUrl = url + '%s/',
|
||||
imageSearch = _imageSearch,
|
||||
multipleImagesPerStrip = True,
|
||||
prevSearch = None,
|
||||
|
|
|
@ -9,16 +9,16 @@ from ..util import tagre
|
|||
|
||||
|
||||
class VampireCheerleaders(_BasicScraper):
|
||||
latestUrl = 'http://www.vampirecheerleaders.net/'
|
||||
stripUrl = latestUrl + 'strips-vc/%s'
|
||||
url = 'http://www.vampirecheerleaders.net/'
|
||||
stripUrl = url + 'strips-vc/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.vampirecheerleaders\.net/strips-vc/[^"]+)', before="cndprev"))
|
||||
help = 'Index format: name'
|
||||
|
||||
|
||||
class Vendetta(_BasicScraper):
|
||||
latestUrl = 'http://www.vendettacomic.com/'
|
||||
stripUrl = latestUrl + 'archive.php?date=%s.jpg'
|
||||
url = 'http://www.vendettacomic.com/'
|
||||
stripUrl = url + 'archive.php?date=%s.jpg'
|
||||
imageSearch = compile(tagre("img", "src", r'(/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(archive\.php\?date=\d+\.jpg)') +
|
||||
tagre("img", "src", r"/images/prev\.jpg"))
|
||||
|
@ -26,8 +26,8 @@ class Vendetta(_BasicScraper):
|
|||
|
||||
|
||||
class VGCats(_BasicScraper):
|
||||
latestUrl = 'http://www.vgcats.com/comics/'
|
||||
stripUrl = latestUrl + '?strip_id=%s'
|
||||
url = 'http://www.vgcats.com/comics/'
|
||||
stripUrl = url + '?strip_id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(images/\d{6}\.[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?strip_id=\d+)') +
|
||||
tagre("img", "src", r"back\.gif"))
|
||||
|
@ -36,26 +36,26 @@ class VGCats(_BasicScraper):
|
|||
|
||||
class VGCatsSuper(VGCats):
|
||||
name = 'VGCats/Super'
|
||||
latestUrl = 'http://www.vgcats.com/super/'
|
||||
stripUrl = latestUrl + '?strip_id=%s'
|
||||
url = 'http://www.vgcats.com/super/'
|
||||
stripUrl = url + '?strip_id=%s'
|
||||
|
||||
|
||||
class VGCatsAdventure(VGCats):
|
||||
name = 'VGCats/Adventure'
|
||||
latestUrl = 'http://www.vgcats.com/ffxi/'
|
||||
stripUrl = latestUrl + '?strip_id=%s'
|
||||
url = 'http://www.vgcats.com/ffxi/'
|
||||
stripUrl = url + '?strip_id=%s'
|
||||
|
||||
|
||||
class VictimsOfTheSystem(_BasicScraper):
|
||||
latestUrl = 'http://www.votscomic.com/'
|
||||
stripUrl = latestUrl + '?id=%s.jpg'
|
||||
url = 'http://www.votscomic.com/'
|
||||
stripUrl = url + '?id=%s.jpg'
|
||||
imageSearch = compile(tagre("img", "src", r'(comicpro/strips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?id=\d+-\d+\.jpg)') + "Previous")
|
||||
help = 'Index format: nnn-nnn'
|
||||
|
||||
|
||||
class ViiviJaWagner(_BasicScraper):
|
||||
latestUrl = 'http://www.hs.fi/viivijawagner/'
|
||||
url = 'http://www.hs.fi/viivijawagner/'
|
||||
stripUrl = None
|
||||
imageSearch = compile(tagre("link", "href", r'(http://hs\d+\.snstatic\.fi/webkuva/oletus/[^"]+)', before="image_src"))
|
||||
prevSearch = compile(tagre("a", "href", r'(/viivijawagner/[^"]+)', before="prev-cm"))
|
||||
|
|
|
@ -9,15 +9,15 @@ from ..util import tagre
|
|||
|
||||
|
||||
class WayfarersMoon(_BasicScraper):
|
||||
latestUrl = 'http://www.wayfarersmoon.com/'
|
||||
stripUrl = latestUrl + 'index.php?page=%s'
|
||||
url = 'http://www.wayfarersmoon.com/'
|
||||
stripUrl = url + 'index.php?page=%s'
|
||||
imageSearch = compile(r'<img src="(/admin.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)".+?btn_back.gif')
|
||||
help = 'Index format: nn'
|
||||
|
||||
|
||||
class WhiteNinja(_BasicScraper):
|
||||
latestUrl = 'http://www.whiteninjacomics.com/comics.shtml'
|
||||
url = 'http://www.whiteninjacomics.com/comics.shtml'
|
||||
stripUrl = 'http://www.whiteninjacomics.com/comics/%s.shtml'
|
||||
imageSearch = compile(r'<img src=(/images/comics/(?!t-).+?\.gif) border=0')
|
||||
prevSearch = compile(r'(/comics/.+?shtml).+?previous')
|
||||
|
@ -25,7 +25,7 @@ class WhiteNinja(_BasicScraper):
|
|||
|
||||
|
||||
class WhiteNoise(_BasicScraper):
|
||||
latestUrl = 'http://www.wncomic.com/archive.php'
|
||||
url = 'http://www.wncomic.com/archive.php'
|
||||
stripUrl = 'http://www.wncomic.com/archive_comments.php?strip_id=%s'
|
||||
imageSearch = compile(r'(istrip_files/strips/.+?)"')
|
||||
prevSearch = compile(r'First .+?"(archive.+?)".+?top_back')
|
||||
|
@ -33,7 +33,7 @@ class WhiteNoise(_BasicScraper):
|
|||
|
||||
|
||||
class WhyTheLongFace(_BasicScraper):
|
||||
latestUrl = 'http://www.absurdnotions.org/wtlf200709.html'
|
||||
url = 'http://www.absurdnotions.org/wtlf200709.html'
|
||||
stripUrl = 'http://www.absurdnotions.org/wtlf%s.html'
|
||||
imageSearch = compile(r'<img src="(http://www.absurdnotions.org/wtlf.+?|lf\d+.\w{1,4})"', IGNORECASE)
|
||||
multipleImagesPerStrip = True
|
||||
|
@ -42,16 +42,16 @@ class WhyTheLongFace(_BasicScraper):
|
|||
|
||||
|
||||
class Wigu(_BasicScraper):
|
||||
latestUrl = 'http://wigucomics.com/'
|
||||
stripUrl = latestUrl + 'adventures/index.php?comic=%s'
|
||||
url = 'http://wigucomics.com/'
|
||||
stripUrl = url + 'adventures/index.php?comic=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/adventures/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/adventures/index\.php\?comic=\d+)', after="go back"))
|
||||
help = 'Index format: n'
|
||||
|
||||
|
||||
class WotNow(_BasicScraper):
|
||||
latestUrl = 'http://shadowburn.binmode.com/wotnow/'
|
||||
stripUrl = latestUrl + 'comic.php?comic_id=%s'
|
||||
url = 'http://shadowburn.binmode.com/wotnow/'
|
||||
stripUrl = url + 'comic.php?comic_id=%s'
|
||||
imageSearch = compile(r'<IMG SRC="(comics/.+?)"')
|
||||
prevSearch = compile(r'<A HREF="(.+?)"><IMG SRC="images/b_prev.gif" ')
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
@ -59,22 +59,22 @@ class WotNow(_BasicScraper):
|
|||
|
||||
# XXX disallowed by robots.txt
|
||||
class _WorldOfWarcraftEh(_BasicScraper):
|
||||
latestUrl = 'http://woweh.com/'
|
||||
url = 'http://woweh.com/'
|
||||
stripUrl = None
|
||||
imageSearch = compile(r'http://woweh.com/(comics/.+?)"')
|
||||
prevSearch = compile(r'woweh.com/(\?p=.+:?)".+:?="prev')
|
||||
|
||||
|
||||
class Wulffmorgenthaler(_BasicScraper):
|
||||
latestUrl = 'http://wumocomicstrip.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://wumocomicstrip.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(/img/strip/[^/"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'([^"]+)') + "<span>Previous")
|
||||
help = 'Index format: yyyy/mm/dd'
|
||||
|
||||
|
||||
class WhiteNoise(_BasicScraper):
|
||||
latestUrl = 'http://www.wncomic.com/archive.php'
|
||||
url = 'http://www.wncomic.com/archive.php'
|
||||
stripUrl = 'http://www.wncomic.com/archive_comments.php?strip_id=%s'
|
||||
imageSearch = compile(r'(istrip_files/strips/.+?)"')
|
||||
prevSearch = compile(r'</a><a href="(.+?)"><img src="images/top_back.jpg" ')
|
||||
|
@ -82,24 +82,24 @@ class WhiteNoise(_BasicScraper):
|
|||
|
||||
|
||||
class WapsiSquare(_BasicScraper):
|
||||
latestUrl = 'http://wapsisquare.com/'
|
||||
stripUrl = latestUrl + 'comic/%s'
|
||||
url = 'http://wapsisquare.com/'
|
||||
stripUrl = url + 'comic/%s'
|
||||
imageSearch = compile(r'<img src="(http://wapsisquare.com/comics/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)"[^>]+?>Previous</a>')
|
||||
help = 'Index format: strip-name'
|
||||
|
||||
|
||||
class WeCanSleepTomorrow(_BasicScraper):
|
||||
latestUrl = 'http://wecansleeptomorrow.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://wecansleeptomorrow.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://wecansleeptomorrow\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://wecansleeptomorrow\.com/[^"]+)', after="prev"))
|
||||
help = 'Index format: yyyy/mm/dd/stripname'
|
||||
|
||||
|
||||
class Wondermark(_BasicScraper):
|
||||
latestUrl = 'http://wondermark.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://wondermark.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(r'<img src="(http://wondermark.com/c/.+?)"')
|
||||
prevSearch = compile(r'<a href="(.+?)" rel="prev">')
|
||||
help = 'Index format: nnn'
|
||||
|
|
|
@ -9,12 +9,12 @@ _prevSearch = compile(tagre("a", "href", r'(\?id=\d+)') + tagre("img", "src", r'
|
|||
_imageSearch = compile(tagre("img", "src", r'([^"]+/img/comic/[^"]+)', after="comicimg"))
|
||||
|
||||
def add(name, shortname):
|
||||
latestUrl = 'http://%s.webcomic.eu/' % shortname
|
||||
url = 'http://%s.webcomic.eu/' % shortname
|
||||
classname = 'WebcomicEu_%s' % name
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name = 'WebcomicEu/' + name,
|
||||
latestUrl = latestUrl,
|
||||
stripUrl = latestUrl + '?id=%s',
|
||||
url = url,
|
||||
stripUrl = url + '?id=%s',
|
||||
imageSearch = _imageSearch,
|
||||
prevSearch = _prevSearch,
|
||||
help = 'Index format: number',
|
||||
|
|
|
@ -14,7 +14,7 @@ def add(name, subpath):
|
|||
classname = 'WebcomicsNation_%s' % name
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name = 'WebcomicsNation/' + name,
|
||||
latestUrl = baseUrl + subpath,
|
||||
url = baseUrl + subpath,
|
||||
stripUrl = baseUrl + '?view=archive&chapter=%s',
|
||||
imageSearch = _imageSearch,
|
||||
multipleImagesPerStrip = True,
|
||||
|
|
|
@ -23,6 +23,7 @@ def add(name, path):
|
|||
|
||||
globals()[classname] = make_scraper(classname,
|
||||
name = 'WLP/' + name,
|
||||
url = baseUrl,
|
||||
starter = bounceStarter(baseUrl, _nextSearch),
|
||||
stripUrl = baseUrl + '%s.html',
|
||||
imageSearch = _imageSearch,
|
||||
|
|
|
@ -10,9 +10,9 @@ from ..util import tagre
|
|||
|
||||
|
||||
class xkcd(_BasicScraper):
|
||||
baseUrl = 'http://xkcd.com/'
|
||||
starter = bounceStarter(baseUrl, compile(tagre("a", "href", r'(/\d+/)', before="next")))
|
||||
stripUrl = baseUrl + '%s/'
|
||||
url = 'http://xkcd.com/'
|
||||
starter = bounceStarter(url, compile(tagre("a", "href", r'(/\d+/)', before="next")))
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://imgs\.xkcd\.com/comics/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(/\d+/)', before="prev"))
|
||||
help = 'Index format: n (unpadded)'
|
||||
|
|
|
@ -8,8 +8,8 @@ from ..util import tagre
|
|||
|
||||
|
||||
class YAFGC(_BasicScraper):
|
||||
latestUrl = 'http://yafgc.net/'
|
||||
stripUrl = latestUrl + '?id=%s'
|
||||
url = 'http://yafgc.net/'
|
||||
stripUrl = url + '?id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://yafgc\.net/img/comic/\d+\.jpg)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://yafgc\.net/\?id=\d+)') +
|
||||
tagre("img", "src", r'/img/navbar/go_to_previous\.gif'))
|
||||
|
@ -17,8 +17,8 @@ class YAFGC(_BasicScraper):
|
|||
|
||||
|
||||
class YouSayItFirst(_BasicScraper):
|
||||
latestUrl = 'http://www.yousayitfirst.com/'
|
||||
stripUrl = latestUrl + 'comics/index.php?date=%s'
|
||||
url = 'http://www.yousayitfirst.com/'
|
||||
stripUrl = url + 'comics/index.php?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(http://www\.yousayitfirst\.com/comics/[^>']+)", quote="'?"))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.yousayitfirst\.com/comics/index\.php\?date=\d+)', quote="'") + "Previous")
|
||||
help = 'Index format: yyyymmdd'
|
||||
|
|
|
@ -9,16 +9,16 @@ from ..helpers import bounceStarter
|
|||
|
||||
|
||||
class ZapComic(_BasicScraper):
|
||||
latestUrl = 'http://www.zapcomic.com/'
|
||||
stripUrl = latestUrl + '%s/'
|
||||
url = 'http://www.zapcomic.com/'
|
||||
stripUrl = url + '%s/'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://www\.zapcomic\.com\?comic_object=\d+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(http://www\.zapcomic\.com/[^"]+)', after="previous-comic-link"))
|
||||
help = 'Index format: yyyy/mm/nnn-stripname'
|
||||
|
||||
|
||||
class Zapiro(_BasicScraper):
|
||||
baseUrl = 'http://www.mg.co.za/zapiro/'
|
||||
starter = bounceStarter(baseUrl,
|
||||
url = 'http://www.mg.co.za/zapiro/'
|
||||
starter = bounceStarter(url,
|
||||
compile(tagre("a", "href", r'(http://mg\.co\.za/cartoon/[^"]+)')+"Newer"))
|
||||
stripUrl = 'http://mg.co.za/cartoon/%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(http://cdn\.mg\.co\.za/crop/content/cartoons/[^"]+)'))
|
||||
|
@ -32,16 +32,16 @@ class Zapiro(_BasicScraper):
|
|||
|
||||
|
||||
class ZebraGirl(_BasicScraper):
|
||||
latestUrl = 'http://www.zebragirl.net/'
|
||||
stripUrl = latestUrl + '?date=%s'
|
||||
url = 'http://www.zebragirl.net/'
|
||||
stripUrl = url + '?date=%s'
|
||||
imageSearch = compile(tagre("img", "src", r"(comics/[^']+)", quote="'"))
|
||||
prevSearch = compile(tagre("link", "href", r"(/\?date=[^']+)", quote="'", before='Previous'))
|
||||
help = 'Index format: yyyy-mm-dd'
|
||||
|
||||
|
||||
class ZombieHunters(_BasicScraper):
|
||||
latestUrl = 'http://www.thezombiehunters.com/'
|
||||
stripUrl = latestUrl + '?strip_id=%s'
|
||||
url = 'http://www.thezombiehunters.com/'
|
||||
stripUrl = url + '?strip_id=%s'
|
||||
imageSearch = compile(tagre("img", "src", r'(/istrip_files/strips/[^"]+)'))
|
||||
prevSearch = compile(tagre("a", "href", r'(\?strip_id=\d+)') + tagre("img", "id", "prevcomic"))
|
||||
help = 'Index format: n(unpadded)'
|
||||
|
|
|
@ -127,7 +127,7 @@ class _BasicScraper(object):
|
|||
@classmethod
|
||||
def starter(cls):
|
||||
"""Get starter URL from where to scrape comic strips."""
|
||||
return cls.latestUrl
|
||||
return cls.url
|
||||
|
||||
@classmethod
|
||||
def namer(cls, imageUrl, pageUrl):
|
||||
|
|
|
@ -172,15 +172,11 @@ def get_testentry(line):
|
|||
entry = {
|
||||
"status": Status.ok if line.startswith(". ") else Status.error,
|
||||
"name": name,
|
||||
"url": "",
|
||||
"url": scraper.url,
|
||||
"description": scraper.description,
|
||||
"error": None,
|
||||
"adult": scraper.adult,
|
||||
}
|
||||
try:
|
||||
entry["url"] = scraper.starter()
|
||||
except Exception as msg:
|
||||
print("WARNING:", msg, file=sys.stderr)
|
||||
return key, entry
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue