This commit is contained in:
DirkReiners 2015-04-29 09:51:47 -05:00
commit 273b429fcd
6 changed files with 33 additions and 24 deletions

1
dosage
View file

@ -75,6 +75,7 @@ def setupOptions():
parser.add_argument('-m', '--modulehelp', action='store_true', help='display help for comic modules') parser.add_argument('-m', '--modulehelp', action='store_true', help='display help for comic modules')
parser.add_argument('-t', '--timestamps', action='store_true', help='print timestamps for all output at any info level') parser.add_argument('-t', '--timestamps', action='store_true', help='print timestamps for all output at any info level')
parser.add_argument('-o', '--output', action='append', dest='handler', choices=events.getHandlerNames(), help='sets output handlers for downloaded comics') parser.add_argument('-o', '--output', action='append', dest='handler', choices=events.getHandlerNames(), help='sets output handlers for downloaded comics')
parser.add_argument('-p', '--parallel', action='store', type=int, default=1, help='fetch comics in parallel. Specify the number of connections')
parser.add_argument('--adult', action='store_true', help='confirms that you are old enough to view adult content') parser.add_argument('--adult', action='store_true', help='confirms that you are old enough to view adult content')
# used for development testing prev/next matching # used for development testing prev/next matching
parser.add_argument('--dry-run', action='store_true', help=argparse.SUPPRESS) parser.add_argument('--dry-run', action='store_true', help=argparse.SUPPRESS)

View file

@ -161,7 +161,7 @@ def getComics(options):
for scraperobj in getScrapers(options.comic, options.basepath, options.adult, options.multimatch): for scraperobj in getScrapers(options.comic, options.basepath, options.adult, options.multimatch):
jobs.put(scraperobj) jobs.put(scraperobj)
# start threads # start threads
num_threads = 1# XXX max(1, min(10, jobs.qsize())) num_threads = min(options.parallel, jobs.qsize())
for i in range(num_threads): for i in range(num_threads):
t = ComicGetter(options) t = ComicGetter(options)
threads.append(t) threads.append(t)

View file

@ -4,7 +4,7 @@
from re import compile, escape from re import compile, escape
from ..scraper import _BasicScraper from ..scraper import _BasicScraper, _ParserScraper
from ..helpers import indirectStarter, bounceStarter from ..helpers import indirectStarter, bounceStarter
from ..util import tagre from ..util import tagre
@ -199,6 +199,16 @@ class DMFA(_BasicScraper):
help = 'Index format: nnn (normally, some specials)' help = 'Index format: nnn (normally, some specials)'
class DoctorCat(_ParserScraper):
url = "http://doctorcatmd.com/"
stripUrl = url + "comic/%s"
firstStripUrl = stripUrl % "doctor-cat"
css = True
imageSearch = '#comic img'
prevSearch = '.navi-prev'
help = 'Index format: stripname'
class DoemainOfOurOwn(_BasicScraper): class DoemainOfOurOwn(_BasicScraper):
url = 'http://www.doemain.com/' url = 'http://www.doemain.com/'
stripUrl = url + 'index.cgi/%s' stripUrl = url + 'index.cgi/%s'

View file

@ -42,13 +42,13 @@ class MagickChicks(_BasicScraper):
help = 'Index format: name' help = 'Index format: name'
class ManlyGuysDoingManlyThings(_BasicScraper): class ManlyGuysDoingManlyThings(_ParserScraper):
url = 'http://thepunchlineismachismo.com/' url = 'http://thepunchlineismachismo.com/'
rurl = escape(url)
stripUrl = url + 'archives/comic/%s' stripUrl = url + 'archives/comic/%s'
firstStripUrl = stripUrl % '02222010' firstStripUrl = stripUrl % '02222010'
imageSearch = compile(tagre("img", "src", r'(%swp-content/uploads/\d+/\d+/\d+-\d+-\d+[^"]+)' % rurl)) css = True
prevSearch = compile(tagre("a", "href", r'(%sarchives/comic/[^"]+)' % rurl, after="previous")) imageSearch = "#comic img"
prevSearch = ".comic-nav-previous"
help = 'Index format: ddmmyyyy' help = 'Index format: ddmmyyyy'

View file

@ -3,7 +3,7 @@
# Copyright (C) 2012-2014 Bastian Kleineidam # Copyright (C) 2012-2014 Bastian Kleineidam
from re import compile, escape from re import compile, escape
from ..scraper import _BasicScraper from ..scraper import _BasicScraper, _ParserScraper
from ..helpers import indirectStarter from ..helpers import indirectStarter
from ..util import tagre from ..util import tagre
@ -68,15 +68,13 @@ class OkCancel(_BasicScraper):
help = 'Index format: yyyymmdd' help = 'Index format: yyyymmdd'
class OmakeTheater(_BasicScraper): class OmakeTheater(_ParserScraper):
url = 'http://omaketheater.com/' url = 'http://omaketheater.com/comics/'
rurl = escape(url) stripUrl = url + '%s/'
stripUrl = url + 'comic/%s/'
firstStripUrl = stripUrl % '1' firstStripUrl = stripUrl % '1'
imageSearch = compile(tagre("img", "src", r'(http://media\.omaketheater\.com/4koma/[^"]+)')) css = True
prevSearch = compile(tagre("a", "href", r'(%scomic/\d+/)' % rurl, after="prev")) imageSearch = ".comicImage img"
starter = indirectStarter(url, prevSearch = ".previous a"
compile(tagre("a", "href", r'(%scomic/\d+/)' % rurl)))
help = 'Index format: number (unpadded)' help = 'Index format: number (unpadded)'

View file

@ -3,7 +3,7 @@
# Copyright (C) 2012-2014 Bastian Kleineidam # Copyright (C) 2012-2014 Bastian Kleineidam
from re import compile, escape, IGNORECASE from re import compile, escape, IGNORECASE
from ..scraper import _BasicScraper from ..scraper import _BasicScraper, _ParserScraper
from ..helpers import indirectStarter from ..helpers import indirectStarter
from ..util import tagre from ..util import tagre
@ -46,14 +46,14 @@ class TheDreamlandChronicles(_BasicScraper):
bp[2] = bp[2][:-1] bp[2] = bp[2][:-1]
return "%s-%s-%s.%s" % (bp[0], bp[1], bp[2], ext) return "%s-%s-%s.%s" % (bp[0], bp[1], bp[2], ext)
class TheGamerCat(_BasicScraper): class TheGamerCat(_ParserScraper):
url = 'http://www.thegamercat.com/' url = "http://www.thegamercat.com/"
rurl = escape(url) stripUrl = url + "comic/%s/"
stripUrl = url + '%s/' firstStripUrl = stripUrl % "06102011"
firstStripUrl = stripUrl % '2011/06/06102011' css = True
imageSearch = compile(tagre("img", "src", r'(%swordpress/comics/[^"/]+)' % rurl)) imageSearch = '#comic img'
prevSearch = compile(tagre("a", "href", r'(%s\d+/\d+/[^"/]+/)' % rurl , after="navi navi-prev")) prevSearch = '.comic-nav-previous'
help = 'Index format: yyyy/mm/mmddyyyy' help = 'Index format: stripname'
class TheGentlemansArmchair(_BasicScraper): class TheGentlemansArmchair(_BasicScraper):