From 8d7fd8b884d50dccd5ce6cbe82305a12e439ec32 Mon Sep 17 00:00:00 2001 From: Tobias Gruetzmacher Date: Mon, 28 Sep 2020 01:15:07 +0200 Subject: [PATCH] Update GoComics modules The usual: GoComics removed some comics, added some and renamed some... --- dosagelib/plugins/gocomics.py | 108 ++++++++++++++++++---------------- dosagelib/plugins/old.py | 52 +++++++++++++++- scripts/gocomics.py | 2 +- scripts/scriptutil.py | 10 +++- 4 files changed, 116 insertions(+), 56 deletions(-) diff --git a/dosagelib/plugins/gocomics.py b/dosagelib/plugins/gocomics.py index f013c4421..b40c97161 100644 --- a/dosagelib/plugins/gocomics.py +++ b/dosagelib/plugins/gocomics.py @@ -44,9 +44,10 @@ class GoComics(_ParserScraper): # scripts/gocomics.py # START AUTOUPDATE cls('1AndDone', '1-and-done'), - cls('2CowsAndAChicken', '2cowsandachicken'), cls('9ChickweedLane', '9chickweedlane'), + cls('9ChickweedLaneClassics', '9-chickweed-lane-classics'), cls('9To5', '9to5'), + cls('Aaggghhh', 'Aaggghhh', 'es'), cls('AdamAtHome', 'adamathome'), cls('AdultChildren', 'adult-children'), cls('Agnes', 'agnes'), @@ -54,16 +55,20 @@ class GoComics(_ParserScraper): cls('AlisHouse', 'alis-house'), cls('AlleyOop', 'alley-oop'), cls('AmandaTheGreat', 'amanda-the-great'), + cls('AmericanChopSuey', 'american-chop-suey'), cls('Andertoons', 'andertoons'), cls('AndyCapp', 'andycapp'), cls('AngryLittleGirls', 'angry-little-girls'), cls('AnimalCrackers', 'animalcrackers'), cls('Annie', 'annie'), + cls('AProblemLikeJamal', 'a-problem-like-jamal'), cls('ArloAndJanis', 'arloandjanis'), cls('AskACat', 'ask-a-cat'), + cls('AskAPortlySyndicatePerson', 'ask-a-portly-syndicate-person'), cls('AskShagg', 'askshagg'), cls('AtTavicat', 'tavicat'), cls('AuntyAcid', 'aunty-acid'), + cls('BabyTrump', 'baby-trump'), cls('BackInTheDay', 'backintheday'), cls('BackToBC', 'back-to-bc'), cls('Bacon', 'bacon'), @@ -77,24 +82,26 @@ class GoComics(_ParserScraper): cls('BarkeaterLake', 'barkeaterlake'), cls('BarneyAndClyde', 'barneyandclyde'), cls('BasicInstructions', 'basicinstructions'), + cls('BatchRejection', 'batch-rejection'), cls('BC', 'bc'), cls('BeanieTheBrownie', 'beanie-the-brownie'), cls('Beardo', 'beardo'), + cls('BearWithMe', 'bear-with-me'), cls('Ben', 'ben'), cls('BenitinYEneas', 'muttandjeffespanol', 'es'), cls('BergerAndWyse', 'berger-and-wyse'), cls('BerkeleyMews', 'berkeley-mews'), cls('Betty', 'betty'), - cls('Bewley', 'bewley'), + cls('BFGFSyndrome', 'bfgf-syndrome'), cls('BigNate', 'bignate'), cls('BigNateFirstClass', 'big-nate-first-class'), cls('BigTop', 'bigtop'), - cls('Biographic', 'biographic'), + cls('BirdAndMoon', 'bird-and-moon'), cls('Birdbrains', 'birdbrains'), cls('BleekerTheRechargeableDog', 'bleeker'), cls('Bliss', 'bliss'), cls('BloomCounty', 'bloomcounty'), - cls('BloomCounty2017', 'bloom-county'), + cls('BloomCounty2019', 'bloom-county'), cls('BobGorrell', 'bobgorrell'), cls('BobTheSquirrel', 'bobthesquirrel'), cls('BoNanas', 'bonanas'), @@ -114,28 +121,30 @@ class GoComics(_ParserScraper): cls('CalvinAndHobbes', 'calvinandhobbes'), cls('CalvinAndHobbesEnEspanol', 'calvinandhobbesespanol', 'es'), cls('Candorville', 'candorville'), - cls('CapsulasMedicas', 'capsulas-medicas%20', 'es'), - cls('Cathy', 'cathy'), + cls('CatanaComics', 'little-moments-of-love'), + cls('CathyClassics', 'cathy'), + cls('CathyCommiserations', 'cathy-commiserations'), + cls('CatsCafe', 'cats-cafe'), cls('CattitudeDoggonit', 'cattitude-doggonit'), cls('CestLaVie', 'cestlavie'), cls('CheapThrillsCuisine', 'cheap-thrills-cuisine'), cls('CheerUpEmoKid', 'cheer-up-emo-kid'), cls('ChipBok', 'chipbok'), cls('ChrisBritt', 'chrisbritt'), + cls('ChuckDrawsThings', 'chuck-draws-things'), cls('ChuckleBros', 'chucklebros'), cls('CitizenDog', 'citizendog'), cls('Claw', 'claw'), cls('ClayBennett', 'claybennett'), cls('ClayJones', 'clayjones'), - cls('ClearBlueWater', 'clearbluewater'), cls('Cleats', 'cleats'), cls('CloseToHome', 'closetohome'), - cls('Committed', 'committed'), cls('Computoon', 'compu-toon'), cls('ConnieToTheWonnie', 'connie-to-the-wonnie'), cls('Cornered', 'cornered'), cls('CowAndBoyClassics', 'cowandboy'), cls('CowTown', 'cowtown'), + cls('Crabgrass', 'crabgrass'), cls('Crumb', 'crumb'), cls('CulDeSac', 'culdesac'), cls('DaddysHome', 'daddyshome'), @@ -143,6 +152,7 @@ class GoComics(_ParserScraper): cls('DanWasserman', 'danwasserman'), cls('DarkSideOfTheHorse', 'darksideofthehorse'), cls('DeepDarkFears', 'deep-dark-fears'), + cls('DeFlocked', 'deflocked'), cls('DiamondLil', 'diamondlil'), cls('DickTracy', 'dicktracy'), cls('DilbertClassics', 'dilbert-classics'), @@ -155,12 +165,9 @@ class GoComics(_ParserScraper): cls('DoodleForFood', 'doodle-for-food'), cls('DoodleTown', 'doodle-town'), cls('Doonesbury', 'doonesbury'), - cls('DorrisMcComics', 'dorris-mccomics'), cls('Drabble', 'drabble'), - cls('DragonGirl', 'dragon-girl'), cls('DrewSheneman', 'drewsheneman'), cls('Drive', 'drive'), - cls('DudeAndDude', 'dudedude'), cls('DumbwichCastle', 'dumbwich-castle'), cls('EdgeCity', 'edge-city'), cls('EdgeOfAdventure', 'edge-of-adventure'), @@ -168,12 +175,11 @@ class GoComics(_ParserScraper): cls('ElCafDePoncho', 'el-cafe-de-poncho', 'es'), cls('EmmyLou', 'emmy-lou'), cls('Endtown', 'endtown'), - cls('EricTheCircle', 'eric-the-circle'), cls('EverydayPeopleCartoons', 'everyday-people-cartoons'), cls('Eyebeam', 'eyebeam'), - cls('FacesOfTheNewsByKerryWaghorn', 'facesinthenews'), - cls('FamilyTree', 'familytree'), + cls('EyebeamClassic', 'eyebeam-classic'), cls('FalseKnees', 'false-knees'), + cls('FamilyTree', 'familytree'), cls('Farcus', 'farcus'), cls('FatCats', 'fat-cats'), cls('FloAndFriends', 'floandfriends'), @@ -181,7 +187,6 @@ class GoComics(_ParserScraper): cls('FoolishMortals', 'foolish-mortals'), cls('ForBetterOrForWorse', 'forbetterorforworse'), cls('ForHeavensSake', 'forheavenssake'), - cls('FortKnox', 'fortknox'), cls('FourEyes', 'four-eyes'), cls('FowlLanguage', 'fowl-language'), cls('FoxTrot', 'foxtrot'), @@ -197,31 +202,28 @@ class GoComics(_ParserScraper): cls('FrogApplause', 'frogapplause'), cls('Garfield', 'garfield'), cls('GarfieldClassics', 'garfield-classics'), - cls('GarfieldEnEspanol', 'garfieldespanol%20', 'es'), - cls('GarfieldMinusGarfield', 'garfieldminusgarfield'), + cls('GarfieldEnEspanol', 'garfieldespanol', 'es'), cls('GaryMarkstein', 'garymarkstein'), cls('GaryVarvel', 'garyvarvel'), cls('GasolineAlley', 'gasolinealley'), - cls('Gaturro', 'gaturro', 'es'), cls('Geech', 'geech'), cls('GetALife', 'getalife'), cls('GetFuzzy', 'getfuzzy'), cls('Gil', 'gil'), cls('GilThorp', 'gilthorp'), cls('GingerMeggs', 'gingermeggs'), + cls('GingerMeggsEnEspanol', 'gingermeggs-espanol', 'es'), cls('GlasbergenCartoons', 'glasbergen-cartoons'), cls('GManWebcomics', 'g-man-webcomics'), cls('GnomeSyndicate', 'gnome-syndicate'), cls('Goats', 'goats'), cls('GoComicsFanArt', 'fan-art'), - cls('Graffiti', 'graffiti'), cls('GrandAvenue', 'grand-avenue'), cls('GrayMatters', 'gray-matters'), cls('GreenHumour', 'green-humour'), - cls('HaikuEwe', 'haikuewe'), + cls('HaircutPractice', 'haircut-practice'), cls('HalfFull', 'half-full'), cls('Harley', 'harley'), - cls('HealthCapsules', 'healthcapsules'), cls('HeartOfTheCity', 'heartofthecity'), cls('Heathcliff', 'heathcliff'), cls('HeathcliffEnEspanol', 'heathcliffespanol', 'es'), @@ -230,6 +232,7 @@ class GoComics(_ParserScraper): cls('Herman', 'herman'), cls('HomeAndAway', 'homeandaway'), cls('HotComicsForCoolPeople', 'hot-comics-for-cool-people'), + cls('HowToCat', 'how-to-cat'), cls('HUBRIS', 'hubris'), cls('HumanCull', 'human-cull'), cls('HutchOwen', 'hutch-owen'), @@ -243,11 +246,11 @@ class GoComics(_ParserScraper): cls('InvisibleBread', 'invisible-bread'), cls('ItsAllAboutYou', 'itsallaboutyou'), cls('JackOhman', 'jackohman'), + cls('JakeLikesOnions', 'jake-likes-onions'), cls('JanesWorld', 'janesworld'), cls('JeffDanziger', 'jeffdanziger'), cls('JeffStahler', 'jeffstahler'), cls('JenSorensen', 'jen-sorensen'), - cls('JerryHolbert', 'jerryholbert'), cls('JimBentonCartoons', 'jim-benton-cartoons'), cls('JimMorin', 'jimmorin'), cls('JimsJournal', 'jimsjournal'), @@ -257,15 +260,14 @@ class GoComics(_ParserScraper): cls('JoeyAlisonSayersComics', 'joey-alison-sayers-comics'), cls('JohnDeering', 'johndeering'), cls('JumpStart', 'jumpstart'), + cls('JunkDrawer', 'junk-drawer'), cls('JustoYFranco', 'justo-y-franco', 'es'), cls('JustSayUncle', 'just-say-uncle'), cls('KenCatalino', 'kencatalino'), - cls('KevinKallaugher', 'kevinkallaugher'), + cls('KevinKallaugher', 'kal'), + cls('KevinNecessaryEditorialCartoons', 'kevin-necessary-editorial-cartoons'), cls('KidBeowulf', 'kid-beowulf'), - cls('KidSpot', 'kidspot'), - cls('KidTown', 'kidtown'), cls('KitchenCapers', 'kitchen-capers'), - cls('KitNCarlyle', 'kitncarlyle'), cls('Kliban', 'kliban'), cls('KlibansCats', 'klibans-cats'), cls('LaCucaracha', 'lacucaracha'), @@ -275,9 +277,11 @@ class GoComics(_ParserScraper): cls('LardsWorldPeaceTips', 'lards-world-peace-tips'), cls('LasHermanasStone', 'stonesoup_espanol', 'es'), cls('LastKiss', 'lastkiss'), + cls('LaughingRedheadComics', 'laughing-redhead-comics'), cls('LayLines', 'lay-lines'), cls('LearnToSpeakCat', 'learn-to-speak-cat'), cls('LibertyMeadows', 'libertymeadows'), + cls('LifeOnEarth', 'life-on-earth'), cls('LilAbner', 'lil-abner'), cls('Lio', 'lio'), cls('LioEnEspanol', 'lioespanol', 'es'), @@ -285,20 +289,21 @@ class GoComics(_ParserScraper): cls('LittleDogLost', 'littledoglost'), cls('LittleFriedChickenAndSushi', 'little-fried-chicken-and-sushi'), cls('LittleNemo', 'little-nemo'), + cls('LizClimoCartoons', 'liz-climo-cartoons'), cls('Lola', 'lola'), cls('LolaEnEspanol', 'lola-en-espanol', 'es'), + cls('LongStoryShort', 'long-story-short'), cls('LooksGoodOnPaper', 'looks-good-on-paper'), cls('LooseParts', 'looseparts'), cls('LosOsorios', 'los-osorios', 'es'), cls('LostSheep', 'lostsheep'), - cls('LostSideOfSuburbia', 'lostsideofsuburbia'), cls('Luann', 'luann'), cls('LuannAgainn', 'luann-againn'), cls('LuannEnEspanol', 'luannspanish', 'es'), cls('LuckyCow', 'luckycow'), cls('LugNuts', 'lug-nuts'), cls('Lunarbaboon', 'lunarbaboon'), - cls('MagicInAMinute', 'magicinaminute'), + cls('M2Bulls', 'm2bulls'), cls('Magnificatz', 'magnificatz'), cls('Maintaining', 'maintaining'), cls('MakingIt', 'making-it'), @@ -308,15 +313,15 @@ class GoComics(_ParserScraper): cls('MattBors', 'matt-bors'), cls('MattDavies', 'mattdavies'), cls('MattWuerker', 'mattwuerker'), - cls('MazeToonsPuzzle', 'mazetoons-puzzle'), cls('MediumLarge', 'medium-large'), - cls('MegClassics', 'meg-classics'), - cls('MichaelAndrew', 'michael-andrew'), + cls('MessycowComics', 'messy-cow'), + cls('MexikidStories', 'mexikid-stories'), cls('MichaelRamirez', 'michaelramirez'), - cls('Microcosm', 'microcosm'), cls('MikeDuJour', 'mike-du-jour'), cls('MikeLester', 'mike-lester'), cls('MikeLuckovich', 'mikeluckovich'), + cls('MissPeach', 'miss-peach'), + cls('Mo', 'mo'), cls('ModeratelyConfused', 'moderately-confused'), cls('Momma', 'momma'), cls('MomsCancer', 'moms-cancer'), @@ -327,6 +332,7 @@ class GoComics(_ParserScraper): cls('MustardAndBoloney', 'mustard-and-boloney'), cls('MuttAndJeff', 'muttandjeff'), cls('MyCageNewAndOld', 'mycage'), + cls('MyDadIsDracula', 'my-dad-is-dracula'), cls('MythTickle', 'mythtickle'), cls('Nancy', 'nancy'), cls('NancyClassics', 'nancy-classics'), @@ -348,18 +354,17 @@ class GoComics(_ParserScraper): cls('OneBigHappy', 'onebighappy'), cls('OrdinaryBill', 'ordinary-bill'), cls('OriginsOfTheSundayComics', 'origins-of-the-sunday-comics'), + cls('OurSuperAdventure', 'our-super-adventure'), + cls('Outland', 'outland'), cls('OutOfTheGenePoolReRuns', 'outofthegenepool'), cls('Overboard', 'overboard'), cls('OverboardEnEspanol', 'overboardespanol', 'es'), cls('OverTheHedge', 'overthehedge'), - cls('Owlturd', 'owlturd'), cls('OzyAndMillie', 'ozy-and-millie'), cls('PatOliphant', 'patoliphant'), - cls('PaulSzep', 'paulszep'), cls('PCAndPixel', 'pcandpixel'), cls('Peanuts', 'peanuts'), cls('PeanutsBegins', 'peanuts-begins'), - cls('PeanutsEnEspanol', 'peanuts-espanol', 'es'), cls('PearlsBeforeSwine', 'pearlsbeforeswine'), cls('Periquita', 'periquita', 'es'), cls('PerlasParaLosCerdos', 'perlas-para-los-cerdos', 'es'), @@ -369,9 +374,8 @@ class GoComics(_ParserScraper): cls('Pibgorn', 'pibgorn'), cls('PibgornSketches', 'pibgornsketches'), cls('Pickles', 'pickles'), - cls('PicturesInBoxes', 'pictures-in-boxes'), - cls('PieComic', 'pie-comic'), cls('Pinkerton', 'pinkerton'), + cls('PirateMike', 'pirate-mike'), cls('PleaseListenToMe', 'please-listen-to-me'), cls('Pluggers', 'pluggers'), cls('PoochCafe', 'poochcafe'), @@ -390,15 +394,15 @@ class GoComics(_ParserScraper): cls('RealLifeAdventures', 'reallifeadventures'), cls('RebeccaHendin', 'rebecca-hendin'), cls('RedAndRover', 'redandrover'), - cls('ReplyAll', 'replyall'), - cls('ReplyAllLite', 'reply-all-lite'), + cls('RedMeat', 'redmeat'), cls('RichardsPoorAlmanac', 'richards-poor-almanac'), cls('RipHaywire', 'riphaywire'), + cls('RipleysAunqueUstedNoLoCrea', 'ripleys-en-espanol', 'es'), cls('RipleysBelieveItOrNot', 'ripleysbelieveitornot'), - cls('RipleysBelieveItOrNotSpanish', 'ripleys-en-espanol', 'es'), cls('RobbieAndBobby', 'robbie-and-bobby'), cls('RobertAriail', 'robert-ariail'), cls('RobRogers', 'robrogers'), + cls('Rosebuds', 'rosebuds'), cls('RoseIsRose', 'roseisrose'), cls('Rubes', 'rubes'), cls('RudyPark', 'rudypark'), @@ -409,16 +413,17 @@ class GoComics(_ParserScraper): cls('ScenesFromAMultiverse', 'scenes-from-a-multiverse'), cls('ScottStantis', 'scottstantis'), cls('Sheldon', 'sheldon'), + cls('ShenComix', 'shen-comix'), cls('ShirleyAndSonClassics', 'shirley-and-son-classics'), cls('Shoe', 'shoe'), cls('Shoecabbage', 'shoecabbage'), - cls('Shortcuts', 'shortcuts'), cls('ShutterbugFollies', 'shutterbug-follies'), cls('SigneWilkinson', 'signewilkinson'), cls('SketchsharkComics', 'sketchshark-comics'), cls('SkinHorse', 'skinhorse'), cls('Skippy', 'skippy'), cls('SmallPotatoes', 'small-potatoes'), + cls('SnoopyEnEspanol', 'peanuts-espanol', 'es'), cls('Snowflakes', 'snowflakes'), cls('SnowSez', 'snow-sez'), cls('Speechless', 'speechless'), @@ -437,6 +442,7 @@ class GoComics(_ParserScraper): cls('SunnyStreet', 'sunny-street'), cls('SunshineState', 'sunshine-state'), cls('SuperFunPakComix', 'super-fun-pak-comix'), + cls('SwanEaters', 'swan-eaters'), cls('SweetAndSourPork', 'sweet-and-sour-pork'), cls('Sylvia', 'sylvia'), cls('TankMcNamara', 'tankmcnamara'), @@ -444,25 +450,22 @@ class GoComics(_ParserScraper): cls('TarzanEnEspanol', 'tarzan-en-espanol', 'es'), cls('TedRall', 'ted-rall'), cls('TenCats', 'ten-cats'), + cls('TextsFromMittens', 'texts-from-mittens'), cls('Thatababy', 'thatababy'), cls('ThatIsPriceless', 'that-is-priceless'), cls('ThatNewCarlSmell', 'that-new-carl-smell'), - cls('ThatsLife', 'thats-life'), cls('TheAcademiaWaltz', 'academiawaltz'), cls('TheAdventuresOfBusinessCat', 'the-adventures-of-business-cat'), cls('TheArgyleSweater', 'theargylesweater'), cls('TheAwkwardYeti', 'the-awkward-yeti'), cls('TheBarn', 'thebarn'), cls('TheBentPinky', 'the-bent-pinky'), - cls('TheBestMedicineCartoon', 'the-best-medicine'), cls('TheBigPicture', 'thebigpicture'), cls('TheBoondocks', 'boondocks'), cls('TheBornLoser', 'the-born-loser'), cls('TheBuckets', 'thebuckets'), cls('TheCity', 'thecity'), cls('TheComicStripThatHasAFinaleEveryDay', 'the-comic-strip-that-has-a-finale-every-day'), - cls('TheConjurers', 'the-conjurers'), - cls('TheCreeps', 'the-creeps'), cls('TheDailyDrawing', 'the-daily-drawing'), cls('TheDinetteSet', 'dinetteset'), cls('TheDoozies', 'thedoozies'), @@ -470,31 +473,32 @@ class GoComics(_ParserScraper): cls('TheElderberries', 'theelderberries'), cls('TheFlyingMcCoys', 'theflyingmccoys'), cls('TheFuscoBrothers', 'thefuscobrothers'), - cls('TheGentlemansArmchair', 'the-gentlemans-armchair'), cls('TheGrizzwells', 'thegrizzwells'), cls('TheHumbleStumble', 'humble-stumble'), cls('TheKChronicles', 'thekchronicles'), cls('TheKnightLife', 'theknightlife'), + cls('TheLastMechanicalMonster', 'the-last-mechanical-monster'), cls('TheLeftyBoscoPictureShow', 'leftyboscopictureshow'), - cls('TheLostBear', 'the-lost-bear'), cls('TheMartianConfederacy', 'the-martian-confederacy'), cls('TheMeaningOfLila', 'meaningoflila'), + cls('TheMiddleAge', 'the-middle-age'), cls('TheMiddletons', 'themiddletons'), cls('TheNorm40', 'the-norm-4-0'), cls('TheNormClassics', 'thenorm'), cls('TheOtherCoast', 'theothercoast'), cls('TheOtherEnd', 'the-other-end'), cls('TheQuixoteSyndrome', 'the-quixote-syndrome'), - cls('TheSunshineClub', 'the-sunshine-club'), cls('TheUpsideDownWorldOfGustaveVerbeek', 'upside-down-world-of-gustave-verbeek'), cls('TheWanderingMelon', 'the-wandering-melon'), cls('TheWizardOfIdSpanish', 'wizardofidespanol', 'es'), cls('TheWorriedWell', 'the-worried-well'), cls('think', 'think'), cls('ThinLines', 'thinlines'), + cls('TimCampbell', 'tim-campbell'), cls('TimEagan', 'tim-eagan'), cls('TinySepuku', 'tinysepuku'), cls('TOBY', 'toby'), + cls('TodaysSzep', 'todays-szep'), cls('TomTheDancingBug', 'tomthedancingbug'), cls('TomToles', 'tomtoles'), cls('TooMuchCoffeeMan', 'toomuchcoffeeman'), @@ -504,10 +508,9 @@ class GoComics(_ParserScraper): cls('TruthFacts', 'truth-facts'), cls('Tutelandia', 'tutelandia', 'es'), cls('TwoPartyOpera', 'two-party-opera'), - cls('UncleArtsFunland', 'uncleartsfunland'), + cls('UnderpantsAndOverbites', 'underpants-and-overbites'), cls('UnderstandingChaos', 'understanding-chaos'), cls('UnstrangePhenomena', 'unstrange-phenomena'), - cls('USAcres', 'us-acres'), cls('ViewsAfrica', 'viewsafrica'), cls('ViewsAmerica', 'viewsamerica'), cls('ViewsAsia', 'viewsasia'), @@ -521,8 +524,11 @@ class GoComics(_ParserScraper): cls('WaltHandelsman', 'walthandelsman'), cls('Warped', 'warped'), cls('WatchYourHead', 'watchyourhead'), + cls('Wawawiwa', 'wawawiwa'), cls('WaynoVision', 'waynovision'), + cls('WebcomicName', 'webcomic-name'), cls('WeePals', 'weepals'), + cls('WhyattCartoons', 'whyatt-cartoons'), cls('Widdershins', 'widdershins'), cls('WideOpen', 'wide-open'), cls('WinLoseDrew', 'drewlitton'), @@ -532,11 +538,11 @@ class GoComics(_ParserScraper): cls('Wondermark', 'wondermark'), cls('WorkingDaze', 'working-daze'), cls('WorkingItOut', 'workingitout'), - cls('WorldOfWonder', 'world-of-wonder'), cls('WrongHands', 'wrong-hands'), cls('WTDuck', 'wtduck'), cls('WuMo', 'wumo'), cls('WumoEnEspanol', 'wumoespanol', 'es'), + cls('Yaffle', 'yaffle'), cls('YesImHotInThis', 'yesimhotinthis'), cls('ZackHill', 'zackhill'), cls('ZenPencils', 'zen-pencils'), diff --git a/dosagelib/plugins/old.py b/dosagelib/plugins/old.py index 3d27e2c85..f5253b835 100644 --- a/dosagelib/plugins/old.py +++ b/dosagelib/plugins/old.py @@ -359,7 +359,6 @@ class Removed(Scraper): cls('GoComics/Putz'), cls('GoComics/QuestionsForKids'), cls('GoComics/RandomActsofNancy'), - cls('GoComics/RedMeat'), cls('GoComics/RicigsToonTrivia'), cls('GoComics/RogueSymmetry'), cls('GoComics/Sabine'), @@ -609,7 +608,51 @@ class Removed(Scraper): cls('WotNow'), # Removed in 3.0 + cls('GoComics/2CowsAndAChicken'), + cls('GoComics/Bewley'), + cls('GoComics/Biographic'), + cls('GoComics/CapsulasMedicas'), + cls('GoComics/ClearBlueWater'), + cls('GoComics/Committed'), + cls('GoComics/DorrisMcComics'), + cls('GoComics/DragonGirl'), + cls('GoComics/DudeAndDude'), + cls('GoComics/EricTheCircle'), + cls('GoComics/FacesOfTheNewsByKerryWaghorn'), + cls('GoComics/FortKnox'), + cls('GoComics/GarfieldMinusGarfield'), + cls('GoComics/Gaturro'), + cls('GoComics/Graffiti'), + cls('GoComics/HaikuEwe'), + cls('GoComics/HealthCapsules'), + cls('GoComics/JerryHolbert'), + cls('GoComics/KidSpot'), + cls('GoComics/KidTown'), + cls('GoComics/KitNCarlyle'), + cls('GoComics/LostSideOfSuburbia'), + cls('GoComics/MagicInAMinute'), + cls('GoComics/MazeToonsPuzzle'), + cls('GoComics/MegClassics'), + cls('GoComics/MichaelAndrew'), + cls('GoComics/Microcosm'), + cls('GoComics/PaulSzep'), + cls('GoComics/PicturesInBoxes'), + cls('GoComics/PieComic'), + cls('GoComics/ReplyAll'), + cls('GoComics/ReplyAllLite'), + cls('GoComics/Shortcuts'), + cls('GoComics/ThatsLife'), + cls('GoComics/TheBestMedicineCartoon'), + cls('GoComics/TheConjurers'), + cls('GoComics/TheCreeps'), + cls('GoComics/TheGentlemansArmchair'), + cls('GoComics/TheLostBear'), + cls('GoComics/TheSunshineClub'), + cls('GoComics/UncleArtsFunland'), + cls('GoComics/USAcres'), + cls('GoComics/WorldOfWonder'), cls('StuffNoOneToldMe'), + ) @@ -659,7 +702,6 @@ class Renamed(Scraper): cls('GoComics/Anecdote', 'ComicSherpa/Anecdote'), cls('GoComics/AppleCreekComics', 'ComicSherpa/AppleCreekComics'), cls('GoComics/BarkingCrayon', 'ComicFury/BarkingCrayon'), - cls('GoComics/BatchRejection', 'ComicSherpa/BatchRejection'), cls('GoComics/Bazoobee', 'ComicSherpa/Bazoobee'), cls('GoComics/Bluebonnets', 'ComicSherpa/Bluebonnets'), cls('GoComics/BlueSkiesToons', 'ComicSherpa/BlueSkiesToons'), @@ -697,7 +739,6 @@ class Renamed(Scraper): cls('GoComics/ONIONAndPEA', 'ComicSherpa/ONIONAndPEA'), cls('GoComics/PaddedCell', 'ComicSherpa/PaddedCell'), cls('GoComics/Peeples', 'ComicSherpa/Peeples'), - cls('GoComics/PirateMike', 'ComicSherpa/PirateMike'), cls('GoComics/PoliceLimit', 'ComicSherpa/PoliceLimit'), cls('GoComics/RonWarren', 'ComicSherpa/RonWarren'), cls('GoComics/SignGarden', 'ComicSherpa/SignGarden'), @@ -755,6 +796,11 @@ class Renamed(Scraper): # Renamed in 3.0 cls('CrapIDrewOnMyLunchBreak', 'WebToons/CrapIDrewOnMyLunchBreak'), + cls('GoComics/BloomCounty2017', 'GoComics/BloomCounty2019'), + cls('GoComics/Cathy', 'GoComics/CathyClassics'), + cls('GoComics/Owlturd', 'GoComics/ShenComix'), + cls('GoComics/PeanutsEnEspanol', 'GoComics/SnoopyEnEspanol'), + cls('GoComics/RipleysBelieveItOrNotSpanish', 'GoComics/RipleysAunqueUstedNoLoCrea'), cls('SmackJeeves/BlackTapestries', 'ComicFury/BlackTapestries'), cls('SmackJeeves/FurryExperience', 'ComicFury/FurryExperience'), cls('SmackJeeves/GrowingTroubles', 'ComicFury/GrowingTroubles'), diff --git a/scripts/gocomics.py b/scripts/gocomics.py index 2a0ffd8d7..3bbfbb22c 100755 --- a/scripts/gocomics.py +++ b/scripts/gocomics.py @@ -23,7 +23,7 @@ class GoComicsUpdater(ComicListUpdater): data = self.get_url(url, expand=False) for comiclink in data.cssselect(outercss): - link = comiclink.attrib['href'].split('/')[1] + link = comiclink.attrib['href'].split('/')[1].strip() name = comiclink.cssselect('h4')[0].text self.add_comic(name, (link, lang)) diff --git a/scripts/scriptutil.py b/scripts/scriptutil.py index 163ad4e45..f64eafa52 100644 --- a/scripts/scriptutil.py +++ b/scripts/scriptutil.py @@ -185,9 +185,17 @@ def asciify(name): return re.sub("[^0-9a-zA-Z_]", "", name) +TRANS = str.maketrans({ + '&': 'And', + '@': 'At', + 'ñ': 'n', + 'á': 'a', +}) + + def format_name(text): """Format a comic name.""" name = html.unescape(text) name = "".join(capfirst(x) for x in name.split(" ")) - name = asciify(name.replace(u'&', u'And').replace(u'@', u'At').replace('ñ', 'n')) + name = asciify(name.translate(TRANS)) return name