From 1834bf179fc7529cb0ef2d49c877c6b59e41ed46 Mon Sep 17 00:00:00 2001 From: Tobias Gruetzmacher Date: Sun, 22 May 2016 23:17:24 +0200 Subject: [PATCH] Migrate Arcamax to single-class module. --- dosagelib/plugins/arcamax.py | 308 ++++++++++++----------------------- scripts/arcamax.py | 6 +- 2 files changed, 112 insertions(+), 202 deletions(-) diff --git a/dosagelib/plugins/arcamax.py b/dosagelib/plugins/arcamax.py index 07439f67c..672475885 100644 --- a/dosagelib/plugins/arcamax.py +++ b/dosagelib/plugins/arcamax.py @@ -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 + ) diff --git a/scripts/arcamax.py b/scripts/arcamax.py index fd425f011..d25878b05 100755 --- a/scripts/arcamax.py +++ b/scripts/arcamax.py @@ -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__':