Migrate Arcamax to single-class module.

This commit is contained in:
Tobias Gruetzmacher 2016-05-22 23:17:24 +02:00
parent f29472c143
commit 1834bf179f
2 changed files with 112 additions and 202 deletions

View file

@ -8,207 +8,115 @@ from __future__ import absolute_import, division, print_function
from ..scraper import _ParserScraper
class _Arcamax(_ParserScraper):
class Arcamax(_ParserScraper):
imageSearch = '//img[@id="comic-zoom"]'
prevSearch = '//a[@class="prev"]'
def __init__(self, name):
super(_Arcamax, self).__init__('Arcamax/' + name)
def __init__(self, name, path):
super(Arcamax, self).__init__('Arcamax/' + name)
self.url = 'http://www.arcamax.com/thefunnies/' + path + '/'
@property
def url(self):
return 'http://www.arcamax.com/thefunnies/' + self.path + '/'
# do not edit anything below since these entries are generated from
# scripts/update_plugins.sh
# START AUTOUPDATE
# 9ChickweedLane has a duplicate in GoComics/9ChickweedLane
# Agnes has a duplicate in GoComics/Agnes
# AndyCapp has a duplicate in GoComics/AndyCapp
# Archie has a duplicate in Creators/Archie
class ArcticCircle(_Arcamax):
path = 'arcticcircle'
# AskShagg has a duplicate in GoComics/AskShagg
class BabyBlues(_Arcamax):
path = 'babyblues'
# BallardStreet has a duplicate in GoComics/BallardStreet
# BarneyAndClyde has a duplicate in GoComics/BarneyAndClyde
class BarneyGoogleAndSnuffySmith(_Arcamax):
path = 'barneygoogle'
# BC has a duplicate in GoComics/BC
class BeetleBailey(_Arcamax):
path = 'beetlebailey'
class Bizarro(_Arcamax):
path = 'bizarro'
# BleekerTheRechargeableDog has a duplicate in GoComics/BleekerTheRechargeableDog
class Blondie(_Arcamax):
path = 'blondie'
class Boondocks(_Arcamax):
path = 'boondocks'
class BrilliantMindOfEdisonLee(_Arcamax):
path = 'brilliantmindofedisonlee'
# Candorville has a duplicate in GoComics/Candorville
class CarpeDiem(_Arcamax):
path = 'carpediem'
# Cathy has a duplicate in GoComics/Cathy
# ChipBok has a duplicate in GoComics/ChipBok
# ChuckleBros has a duplicate in GoComics/ChuckleBros
# ClayBennett has a duplicate in GoComics/ClayBennett
class Crankshaft(_Arcamax):
path = 'crankshaft'
# CulDeSac has a duplicate in GoComics/CulDeSac
class Curtis(_Arcamax):
path = 'curtis'
# DaddysHome has a duplicate in GoComics/DaddysHome
# DarrinBell has a duplicate in GoComics/DarrinBell
class DeFlocked(_Arcamax):
path = 'deflocked'
class DennisTheMenace(_Arcamax):
path = 'dennisthemenace'
# DiamondLil has a duplicate in GoComics/DiamondLil
# Dilbert has a duplicate in Dilbert
class DinetteSet(_Arcamax):
path = 'thedinetteset'
# DogEatDoug has a duplicate in GoComics/DogEatDoug
# DogsOfCKennel has a duplicate in GoComics/DogsOfCKennel
# Doonesbury has a duplicate in GoComics/Doonesbury
class Dustin(_Arcamax):
path = 'dustin'
class FamilyCircus(_Arcamax):
path = 'familycircus'
# FloAndFriends has a duplicate in GoComics/FloAndFriends
# ForBetterOrForWorse has a duplicate in GoComics/ForBetterOrForWorse
# ForHeavensSake has a duplicate in GoComics/ForHeavensSake
# FortKnox has a duplicate in GoComics/FortKnox
# FreeRange has a duplicate in GoComics/FreeRange
# Garfield has a duplicate in GoComics/Garfield
# GetFuzzy has a duplicate in GoComics/GetFuzzy
# HagarTheHorrible has a duplicate in HagarTheHorrible
# Heathcliff has a duplicate in GoComics/Heathcliff
# HerbAndJamaal has a duplicate in GoComics/HerbAndJamaal
class HiAndLois(_Arcamax):
path = 'hiandlois'
class IntelligentLife(_Arcamax):
path = 'intelligentlife'
class JerryKingCartoons(_Arcamax):
path = 'humorcartoon'
# LisaBenson has a duplicate in GoComics/LisaBenson
# LittleDogLost has a duplicate in GoComics/LittleDogLost
# LongStoryShort has a duplicate in Creators/LongStoryShort
# LooseParts has a duplicate in GoComics/LooseParts
# Luann has a duplicate in GoComics/Luann
class MallardFillmore(_Arcamax):
path = 'mallardfillmore'
class Marvin(_Arcamax):
path = 'marvin'
class MasterStrokesGolfTips(_Arcamax):
path = 'masterstrokes'
class MeaningOfLila(_Arcamax):
path = 'meaningoflila'
# MichaelRamirez has a duplicate in GoComics/MichaelRamirez
# MikeDuJour has a duplicate in GoComics/MikeDuJour
# MikeLester has a duplicate in GoComics/MikeLester
# MikeLuckovich has a duplicate in GoComics/MikeLuckovich
# Momma has a duplicate in GoComics/Momma
class MotherGooseAndGrimm(_Arcamax):
path = 'mothergooseandgrimm'
class Mutts(_Arcamax):
path = 'mutts'
# NestHeads has a duplicate in GoComics/NestHeads
# NickAnderson has a duplicate in GoComics/NickAnderson
# NonSequitur has a duplicate in GoComics/NonSequitur
# OneBigHappy has a duplicate in GoComics/OneBigHappy
# Peanuts has a duplicate in GoComics/Peanuts
# PearlsBeforeSwine has a duplicate in GoComics/PearlsBeforeSwine
# Pickles has a duplicate in GoComics/Pickles
# RedAndRover has a duplicate in GoComics/RedAndRover
# ReplyAll has a duplicate in GoComics/ReplyAll
class RhymesWithOrange(_Arcamax):
path = 'rhymeswithorange'
# Rubes has a duplicate in GoComics/Rubes
# RudyPark has a duplicate in GoComics/RudyPark
# Rugrats has a duplicate in Creators/Rugrats
# ScaryGary has a duplicate in GoComics/ScaryGary
# Shoe has a duplicate in GoComics/Shoe
# SigneWilkinson has a duplicate in GoComics/SigneWilkinson
# SpeedBump has a duplicate in GoComics/SpeedBump
# SteveBenson has a duplicate in GoComics/SteveBenson
# SteveBreen has a duplicate in GoComics/SteveBreen
# StrangeBrew has a duplicate in GoComics/StrangeBrew
class TakeItFromTheTinkersons(_Arcamax):
path = 'takeitfromthetinkersons'
# TheBarn has a duplicate in GoComics/TheBarn
class TheLockhorns(_Arcamax):
path = 'thelockhorns'
# TheOtherCoast has a duplicate in GoComics/TheOtherCoast
class TinasGroove(_Arcamax):
path = 'tinasgroove'
# WeePals has a duplicate in GoComics/WeePals
# WizardOfId has a duplicate in GoComics/WizardOfId
# WorkingItOut has a duplicate in GoComics/WorkingItOut
# Wumo has a duplicate in GoComics/WuMo
# ZackHill has a duplicate in GoComics/ZackHill
class Zits(_Arcamax):
path = 'zits'
# END AUTOUPDATE
@classmethod
def getmodules(cls):
return (
# do not edit anything below since these entries are generated from
# scripts/arcamax.py
# START AUTOUPDATE
# 9ChickweedLane has a duplicate in GoComics/9ChickweedLane
# Agnes has a duplicate in GoComics/Agnes
# AndyCapp has a duplicate in GoComics/AndyCapp
# Archie has a duplicate in Creators/Archie
cls('ArcticCircle', 'arcticcircle'),
# AskShagg has a duplicate in GoComics/AskShagg
cls('BabyBlues', 'babyblues'),
# BallardStreet has a duplicate in GoComics/BallardStreet
# BarneyAndClyde has a duplicate in GoComics/BarneyAndClyde
cls('BarneyGoogleAndSnuffySmith', 'barneygoogle'),
# BC has a duplicate in GoComics/BC
cls('BeetleBailey', 'beetlebailey'),
cls('Bizarro', 'bizarro'),
# BleekerTheRechargeableDog has a duplicate in GoComics/BleekerTheRechargeableDog
cls('Blondie', 'blondie'),
cls('Boondocks', 'boondocks'),
cls('BrilliantMindOfEdisonLee', 'brilliantmindofedisonlee'),
# Candorville has a duplicate in GoComics/Candorville
cls('CarpeDiem', 'carpediem'),
# Cathy has a duplicate in GoComics/Cathy
# ChipBok has a duplicate in GoComics/ChipBok
# ChuckleBros has a duplicate in GoComics/ChuckleBros
# ClayBennett has a duplicate in GoComics/ClayBennett
cls('Crankshaft', 'crankshaft'),
# CulDeSac has a duplicate in GoComics/CulDeSac
cls('Curtis', 'curtis'),
# DaddysHome has a duplicate in GoComics/DaddysHome
# DarrinBell has a duplicate in GoComics/DarrinBell
cls('DeFlocked', 'deflocked'),
cls('DennisTheMenace', 'dennisthemenace'),
# DiamondLil has a duplicate in GoComics/DiamondLil
cls('DinetteSet', 'thedinetteset'),
# DogEatDoug has a duplicate in GoComics/DogEatDoug
# DogsOfCKennel has a duplicate in GoComics/DogsOfCKennel
# Doonesbury has a duplicate in GoComics/Doonesbury
cls('Dustin', 'dustin'),
cls('FamilyCircus', 'familycircus'),
# FloAndFriends has a duplicate in GoComics/FloAndFriends
# ForBetterOrForWorse has a duplicate in GoComics/ForBetterOrForWorse
# ForHeavensSake has a duplicate in GoComics/ForHeavensSake
# FortKnox has a duplicate in GoComics/FortKnox
# FreeRange has a duplicate in GoComics/FreeRange
# Garfield has a duplicate in GoComics/Garfield
# GetFuzzy has a duplicate in GoComics/GetFuzzy
# Heathcliff has a duplicate in GoComics/Heathcliff
# HerbAndJamaal has a duplicate in GoComics/HerbAndJamaal
cls('HiAndLois', 'hiandlois'),
cls('IntelligentLife', 'intelligentlife'),
cls('JerryKingCartoons', 'humorcartoon'),
# LisaBenson has a duplicate in GoComics/LisaBenson
# LittleDogLost has a duplicate in GoComics/LittleDogLost
# LongStoryShort has a duplicate in Creators/LongStoryShort
# LooseParts has a duplicate in GoComics/LooseParts
# Luann has a duplicate in GoComics/Luann
cls('MallardFillmore', 'mallardfillmore'),
cls('Marvin', 'marvin'),
cls('MasterStrokesGolfTips', 'masterstrokes'),
cls('MeaningOfLila', 'meaningoflila'),
# MichaelRamirez has a duplicate in GoComics/MichaelRamirez
# MikeDuJour has a duplicate in GoComics/MikeDuJour
# MikeLester has a duplicate in GoComics/MikeLester
# MikeLuckovich has a duplicate in GoComics/MikeLuckovich
# Momma has a duplicate in GoComics/Momma
cls('MotherGooseAndGrimm', 'mothergooseandgrimm'),
cls('Mutts', 'mutts'),
# NestHeads has a duplicate in GoComics/NestHeads
# NickAnderson has a duplicate in GoComics/NickAnderson
# NonSequitur has a duplicate in GoComics/NonSequitur
# OneBigHappy has a duplicate in GoComics/OneBigHappy
# Peanuts has a duplicate in GoComics/Peanuts
# PearlsBeforeSwine has a duplicate in GoComics/PearlsBeforeSwine
# Pickles has a duplicate in GoComics/Pickles
# RedAndRover has a duplicate in GoComics/RedAndRover
# ReplyAll has a duplicate in GoComics/ReplyAll
cls('RhymesWithOrange', 'rhymeswithorange'),
# Rubes has a duplicate in GoComics/Rubes
# RudyPark has a duplicate in GoComics/RudyPark
# Rugrats has a duplicate in Creators/Rugrats
# ScaryGary has a duplicate in GoComics/ScaryGary
# Shoe has a duplicate in GoComics/Shoe
# SigneWilkinson has a duplicate in GoComics/SigneWilkinson
# SpeedBump has a duplicate in GoComics/SpeedBump
# SteveBenson has a duplicate in GoComics/SteveBenson
# SteveBreen has a duplicate in GoComics/SteveBreen
# StrangeBrew has a duplicate in GoComics/StrangeBrew
cls('TakeItFromTheTinkersons', 'takeitfromthetinkersons'),
# TheBarn has a duplicate in GoComics/TheBarn
cls('TheLockhorns', 'thelockhorns'),
# TheOtherCoast has a duplicate in GoComics/TheOtherCoast
cls('TinasGroove', 'tinasgroove'),
# WeePals has a duplicate in GoComics/WeePals
# WizardOfId has a duplicate in GoComics/WizardOfId
# WorkingItOut has a duplicate in GoComics/WorkingItOut
# Wumo has a duplicate in GoComics/WuMo
# ZackHill has a duplicate in GoComics/ZackHill
cls('Zits', 'zits'),
# END AUTOUPDATE
)

View file

@ -18,7 +18,9 @@ class ArcamaxUpdater(ComicListUpdater):
# names of comics to exclude
excluded_comics = (
"HagartheHorrible", # better source available
# better source available
"Dilbert",
"HagarTheHorrible",
)
def handle_url(self, url):
@ -36,7 +38,7 @@ class ArcamaxUpdater(ComicListUpdater):
self.handle_url('http://www.arcamax.com/comics')
def get_entry(self, name, entry):
return u"class %s(_Arcamax):\n path = %r" % (name, entry)
return u"cls('%s', '%s')," % (name, entry)
if __name__ == '__main__':