Add Comics (#269)

* add DarkLegacy comic
* add Awaken comic
* add Vibe comic
* add SwordComic comic
This commit is contained in:
Typhonragewind 2023-06-13 22:46:23 +01:00 committed by GitHub
parent 41b2c0dc94
commit 52d9f38793
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 48 additions and 6 deletions

View file

@ -377,13 +377,21 @@ class ATaleOfTails(WordPressScraper):
adult = True adult = True
class AwkwardZombie(BasicScraper): class Awaken(ParserScraper):
url = "https://www.awakencomic.com/"
stripUrl = url + 'comic/%s'
firstStripUrl = stripUrl % 'comic-cover'
imageSearch = '//div[@id="cc-comicbody"]//img'
prevSearch = '//a[@rel="prev"]'
help = 'Index format: chapter-n-page-n (unpadded)'
class AwkwardZombie(ParserScraper):
url = 'https://www.awkwardzombie.com/' url = 'https://www.awkwardzombie.com/'
rurl = escape(url)
stripUrl = url + 'awkward-zombie/%s' stripUrl = url + 'awkward-zombie/%s'
firstStripUrl = stripUrl % 'coin-battle' firstStripUrl = stripUrl % 'coin-battle'
imageSearch = compile(tagre("img", "src", r'(%scomics/[^"]+)' % rurl)) imageSearch = '//div[@id="cc-comicbody"]//img'
prevSearch = compile(tagre("a", "href", r'(%sawkward-zombie/[a-zA-Z-]+)' % rurl, before="prev")) prevSearch = '//a[@rel="prev"]'
help = 'Index format: variable :(' help = 'Index format: variable :('

View file

@ -6,7 +6,7 @@
from re import compile, escape from re import compile, escape
from typing import List from typing import List
from ..scraper import _BasicScraper, _ParserScraper from ..scraper import _BasicScraper, _ParserScraper, ParserScraper
from ..helpers import bounceStarter, indirectStarter, joinPathPartsNamer from ..helpers import bounceStarter, indirectStarter, joinPathPartsNamer
from ..util import tagre from ..util import tagre
from .common import WordPressScraper, WordPressNavi, WordPressWebcomic from .common import WordPressScraper, WordPressNavi, WordPressWebcomic

View file

@ -5,7 +5,7 @@
# Copyright (C) 2019-2020 Daniel Ring # Copyright (C) 2019-2020 Daniel Ring
from re import compile, escape from re import compile, escape
from ..scraper import _BasicScraper, _ParserScraper from ..scraper import _BasicScraper, _ParserScraper, ParserScraper
from ..helpers import indirectStarter, bounceStarter from ..helpers import indirectStarter, bounceStarter
from ..util import tagre from ..util import tagre
from .common import (ComicControlScraper, WordPressScraper, WordPressNavi, from .common import (ComicControlScraper, WordPressScraper, WordPressNavi,
@ -27,6 +27,18 @@ class DangerouslyChloe(ComicControlScraper):
firstStripUrl = url + 'strips-dc/Chapter_1_-_That_damned_girl' firstStripUrl = url + 'strips-dc/Chapter_1_-_That_damned_girl'
class DarkLegacy(ParserScraper):
starter = indirectStarter
url = "https://www.darklegacycomics.com"
stripUrl = url + '%s'
firstStripUrl = stripUrl % '1'
imageSearch = '//div[@class="comic narrow"]//img'
prevSearch = ('//a[@title="Previous - A"]',
'//a[@title="Previous"]')
latestSearch = '//div[@class="comic narrow feed"]//a'
help = 'Index format: n (unpadded)'
class DarkWhite(WordPressScraper): class DarkWhite(WordPressScraper):
url = 'https://www.darkwhitecomic.com/' url = 'https://www.darkwhitecomic.com/'
stripUrl = url + 'comic/%s/' stripUrl = url + 'comic/%s/'

View file

@ -709,3 +709,12 @@ class SwordsAndSausages(_ParserScraper):
imageSearch = '//img[d:class("comic-image")]' imageSearch = '//img[d:class("comic-image")]'
prevSearch = '//a[./span[contains(text(), "Previous")]]' prevSearch = '//a[./span[contains(text(), "Previous")]]'
multipleImagesPerStrip = True multipleImagesPerStrip = True
class SwordsComic(ParserScraper):
url = 'https://swordscomic.com/'
stripUrl = url + 'comic/%s'
firstStripUrl = stripUrl % 'cover'
imageSearch = '//div[@class="page-image-wrapper"]//img'
prevSearch = '//a[@class="navigation-button navigation-previous"]'
help = 'Index format: Swordsnnn (unpadded)'

View file

@ -3,6 +3,7 @@
# Copyright (C) 2012-2014 Bastian Kleineidam # Copyright (C) 2012-2014 Bastian Kleineidam
# Copyright (C) 2015-2020 Tobias Gruetzmacher # Copyright (C) 2015-2020 Tobias Gruetzmacher
# Copyright (C) 2019-2020 Daniel Ring # Copyright (C) 2019-2020 Daniel Ring
from ..scraper import ParserScraper, _ParserScraper from ..scraper import ParserScraper, _ParserScraper
from ..helpers import bounceStarter, indirectStarter from ..helpers import bounceStarter, indirectStarter
@ -31,6 +32,18 @@ class VGCats(_ParserScraper):
help = 'Index format: n (unpadded)' help = 'Index format: n (unpadded)'
class Vibe(ParserScraper):
starter = indirectStarter
url = 'http://www.vibecomic.com/vibe/'
stripUrl = url + '%s'
firstStripUrl = stripUrl % ''
imageSearch = '//div[@id="cc-comicbody"]//img'
prevSearch = '//a[@rel="prev"]'
nextSearch = '//a[@rel="next"]'
latestSearch = '//a[@class="last"]'
help = 'Index format: VIBEnnn (padded)'
class VickiFox(_ParserScraper): class VickiFox(_ParserScraper):
url = 'http://www.vickifox.com/comic/strip' url = 'http://www.vickifox.com/comic/strip'
stripUrl = url + '?id=%s' stripUrl = url + '?id=%s'