613 lines
14 KiB
Python
613 lines
14 KiB
Python
# -*- coding: iso-8859-1 -*-
|
|
# Copyright (C) 2004-2005 Tristan Seligmann and Jonathan Jacobs
|
|
# Copyright (C) 2012 Bastian Kleineidam
|
|
|
|
from re import compile
|
|
from ..scraper import make_scraper
|
|
from ..util import tagre, asciify
|
|
|
|
def add(name, repl=''):
|
|
baseUrl = 'http://www.gocomics.com/'
|
|
comicname = asciify(name)
|
|
shortname = name.lower().replace(' ', repl)
|
|
classname = 'GoComics_%s' % comicname
|
|
|
|
@classmethod
|
|
def namer(cls, imageUrl, pageUrl):
|
|
prefix, year, month, day = pageUrl.split('/', 3)
|
|
return "%s_%s%s%s.gif" % (shortname, year, month, day)
|
|
|
|
globals()[classname] = make_scraper(classname,
|
|
latestUrl=baseUrl + shortname,
|
|
name='GoComics/' + comicname,
|
|
stripUrl=baseUrl + shortname + '/%s',
|
|
imageSearch=compile(tagre("img", "src", r'(http://assets\.amuniversal\.com/[0-9a-f]+)')),
|
|
prevSearch=compile(tagre("a", "href", r'(/[^"]+/\d+/\d+/\d+)', after="prev")),
|
|
help='Index format: yyyy/mm/dd',
|
|
namer=namer,
|
|
)
|
|
|
|
|
|
# http://www.gocomics.com/features
|
|
# Duplicate comics from creators.com are commented out
|
|
add('2 Cows and a Chicken')
|
|
add('9 Chickweed Lane')
|
|
add('9 to 5')
|
|
add('The Academia Waltz')
|
|
add('Adam at Home')
|
|
#add('Agnes')
|
|
add('Alley Oop', repl='-')
|
|
add('Andertoons')
|
|
#add('Andy Capp')
|
|
add('Angry Little Girls', repl='-')
|
|
add('Animal Crackers')
|
|
add('Annie')
|
|
add('The Argyle Sweater')
|
|
add('Arlo and Janis')
|
|
#add('Ask Shagg')
|
|
#add('BC')
|
|
add('Back in the Day')
|
|
add('Bad Reporter')
|
|
add('Baldo')
|
|
#add('Ballard Street')
|
|
add('Banana Triangle', repl='-')
|
|
add('Barkeater Lake')
|
|
#add('The Barn')
|
|
add('Barney and Clyde')
|
|
add('Basic Instructions')
|
|
add('Beardo')
|
|
add('Ben')
|
|
add('Berger and Wyse', repl='-')
|
|
add('Betty')
|
|
add('Bewley')
|
|
add('Biff and Riley', repl='-')
|
|
add('Big Nate')
|
|
add('The Big Picture')
|
|
add('Big Top')
|
|
add('Biographic')
|
|
add('Birdbrains')
|
|
add('Bliss')
|
|
add('Bloom County')
|
|
add('Bo Nanas')
|
|
add('Bob the Squirrel')
|
|
add('Boomerangs')
|
|
add('The Boondocks')
|
|
add('The Born Loser')
|
|
add('Bottomliners')
|
|
add('Bound and Gagged')
|
|
add('Break of Day')
|
|
add('Brevity')
|
|
add('Brewster Rockit')
|
|
add('Broom Hilda')
|
|
add('The Buckets')
|
|
add('Buni')
|
|
#add('Cafe con Leche')
|
|
add('Calvin and Hobbes')
|
|
add('Candorville')
|
|
add('Cathy')
|
|
add('Cest la Vie')
|
|
add('Cheap Thrills Cuisine', repl='-')
|
|
#add('Chuckle Bros')
|
|
add('Citizen Dog')
|
|
add('The City')
|
|
add('Cleats')
|
|
add('Close to Home')
|
|
add('Committed')
|
|
add('Compu-toon')
|
|
add('Cornered')
|
|
add('Cow and Boy')
|
|
add('CowTown')
|
|
add('Crumb')
|
|
add('Cul de Sac')
|
|
#add('Daddys Home')
|
|
add('Dark Side of the Horse')
|
|
add('Deep Cover')
|
|
#add('Diamond Lil')
|
|
add('Dick Tracy')
|
|
#add('The Dinette Set')
|
|
add('Dixie Drive', repl='-')
|
|
#add('Dog Eat Doug')
|
|
#add('Dogs of C Kennel')
|
|
add('Domestic Abuse')
|
|
add('Doonesbury')
|
|
add('The Doozies')
|
|
add('Drabble')
|
|
add('DudeDude')
|
|
add('The Duplex')
|
|
add('Eek')
|
|
add('The Elderberries')
|
|
add('Endtown')
|
|
add('Eric the Circle', repl='-')
|
|
add('F Minus')
|
|
add('Family Tree')
|
|
add('Farcus')
|
|
add('Fat Cats', repl='-')
|
|
#add('Flo and Friends')
|
|
add('The Flying McCoys')
|
|
add('Foolish Mortals', repl='-')
|
|
add('For Better or For Worse')
|
|
#add('For Heavens Sake')
|
|
add('Fort Knox')
|
|
add('FoxTrot')
|
|
add('FoxTrot Classics')
|
|
add('Frank and Ernest')
|
|
add('Frazz')
|
|
add('Fred Basset')
|
|
#add('Free Range')
|
|
add('Freshly Squeezed')
|
|
add('Frog Applause')
|
|
add('The Fusco Brothers')
|
|
add('Garfield')
|
|
add('Garfield Minus Garfield')
|
|
add('Gasoline Alley')
|
|
add('Geech')
|
|
add('Get a Life')
|
|
add('Get Fuzzy')
|
|
add('Gil Thorp')
|
|
add('Ginger Meggs')
|
|
add('Gor Dominical')
|
|
add('Graffiti')
|
|
add('Grand Avenue')
|
|
add('Gray Matters')
|
|
add('The Grizzwells')
|
|
add('Haiku Ewe')
|
|
add('Ham Shears')
|
|
add('Health Capsules')
|
|
add('Heart of the City')
|
|
#add('Heathcliff')
|
|
add('Heavenly Nostrils')
|
|
#add('Herb and Jamaal')
|
|
add('Herman')
|
|
add('Home and Away')
|
|
add('HUBRIS!')
|
|
add('The Humble Stumble')
|
|
add('Imagine This')
|
|
add('In the Bleachers')
|
|
add('In the Sticks')
|
|
add('Incidental Comics')
|
|
add('Ink Pen')
|
|
add('Inspector Dangers Crime Quiz')
|
|
add('Its All About You')
|
|
add('Janes World')
|
|
add('Jims Journal')
|
|
add('Joe Vanilla')
|
|
add('Jump Start')
|
|
add('The K Chronicles')
|
|
add('KidCity')
|
|
add('KidSpot')
|
|
add('Kit N Carlyle')
|
|
add('Kitchen Capers')
|
|
add('Kliban')
|
|
add('Klibans Cats')
|
|
add('The Knight Life')
|
|
add('La Cucaracha')
|
|
add('Last Kiss')
|
|
add('The LeftyBosco Picture Show')
|
|
add('Legend of Bill')
|
|
#add('Liberty Meadows')
|
|
add('Lil Abner')
|
|
add('Lio')
|
|
add('Little Dog Lost')
|
|
add('Lola')
|
|
add('Loose Parts')
|
|
add('The Lost Bear')
|
|
add('Lost Side of Suburbia')
|
|
add('Love Is...')
|
|
add('Luann')
|
|
add('Lucky Cow')
|
|
add('Mac')
|
|
add('Magic in a Minute')
|
|
add('Maintaining')
|
|
add('Marias Day')
|
|
add('Marmaduke')
|
|
add('McArroni')
|
|
#add('The Meaning of Lila')
|
|
add('Medium Large')
|
|
add('Meg Classics')
|
|
add('The Middletons')
|
|
add('Mike du Jour')
|
|
add('Minimum Security')
|
|
add('Moderately Confused')
|
|
add('Molly and the Bear')
|
|
#add('Momma')
|
|
add('Monty')
|
|
add('Motley Classics')
|
|
add('Mr. Gigi and the Squid')
|
|
add('Mutt and Jeff')
|
|
add('My Cage')
|
|
add('MythTickle')
|
|
add('Nancy')
|
|
#add('Nest Heads')
|
|
add('NEUROTICA')
|
|
add('New Adventures of Queen Victoria')
|
|
add('Non Sequitur')
|
|
add('The Norm Classics')
|
|
add('Nothing is Not Something')
|
|
add('Off the Mark')
|
|
add('Ollie and Quentin')
|
|
#add('On A Claire Day')
|
|
#add('One Big Happy')
|
|
add('Ordinary Bill')
|
|
#add('The Other Coast')
|
|
add('Out of the Gene Pool Re-Runs')
|
|
add('Over the Hedge')
|
|
add('Overboard')
|
|
add('Oyster War')
|
|
add('PC and Pixel')
|
|
add('Peanuts')
|
|
add('Pearls Before Swine')
|
|
add('Pibgorn')
|
|
add('Pibgorn Sketches')
|
|
add('Pickles')
|
|
add('Pinkerton')
|
|
add('Pluggers')
|
|
add('Pooch Cafe')
|
|
add('PreTeena')
|
|
add('Prickly City')
|
|
add('Rabbits Against Magic')
|
|
add('Raising Duncan')
|
|
add('Real Life Adventures')
|
|
add('Reality Check')
|
|
add('Red and Rover')
|
|
add('Red Meat')
|
|
add('Reply All')
|
|
add('Rip Haywire')
|
|
add('Ripleys Believe It or Not')
|
|
add('Rose is Rose')
|
|
#add('Rubes')
|
|
add('Rudy Park')
|
|
add('Savage Chickens')
|
|
#add('Scary Gary')
|
|
add('Shirley and Son Classics')
|
|
add('Shoe')
|
|
add('Shoecabbage')
|
|
add('Shortcuts')
|
|
add('Skin Horse')
|
|
add('Skippy')
|
|
add('Slowpoke')
|
|
add('Soup to Nutz')
|
|
#add('Speed Bump')
|
|
add('Spot the Frog')
|
|
add('Starslip')
|
|
add('Stone Soup')
|
|
#add('Strange Brew')
|
|
add('The Sunshine Club')
|
|
add('Sylvia')
|
|
add('Tank McNamara')
|
|
add('Tarzan')
|
|
add('Ten Cats')
|
|
add('Tales of TerraTopia')
|
|
add('That is Priceless')
|
|
add('Thats Life')
|
|
add('Thatababy')
|
|
#add('Thin Lines')
|
|
add('Tiny Sepuku')
|
|
add('TOBY')
|
|
add('Todays Dogg')
|
|
add('Tom the Dancing Bug')
|
|
add('Too Much Coffee Man')
|
|
add('Trivquiz')
|
|
add('Twaggies')
|
|
add('Uncle Arts Funland')
|
|
add('Unstrange Phenomena')
|
|
add('U.S. Acres')
|
|
add('Viivi and Wagner')
|
|
add('Watch Your Head')
|
|
#add('Wee Pals')
|
|
#add('Wizard of Id')
|
|
add('Working Daze')
|
|
#add('Working It Out')
|
|
add('W.T. Duck')
|
|
#add('Zack Hill')
|
|
add('Ziggy')
|
|
|
|
# http://www.gocomics.com/explore/editorial_list
|
|
add('Lalo Alcaraz')
|
|
add('Nick Anderson')
|
|
add('Robert Ariail', repl='-')
|
|
add('Chuck Asay')
|
|
add('Tony Auth')
|
|
add('Clay Bennett')
|
|
add('Lisa Benson')
|
|
add('Steve Benson')
|
|
add('Chip Bok')
|
|
add('Matt Bors', repl='-')
|
|
add('Steve Breen')
|
|
add('Chris Britt')
|
|
add('Stuart Carlson')
|
|
add('Ken Catalino')
|
|
add('Jeff Danziger')
|
|
add('Matt Davies')
|
|
add('John Deering')
|
|
add('Bob Gorrell')
|
|
add('Walt Handelsman')
|
|
add('Joe Heller', repl='-')
|
|
add('Jerry Holbert')
|
|
add('Clay Jones')
|
|
add('Kevin Kallaugher')
|
|
add('Steve Kelley')
|
|
add('Mike Lester', repl='-')
|
|
add('Drew Litton')
|
|
add('Dick Locher')
|
|
add('Chan Lowe')
|
|
add('Mike Luckovich')
|
|
add('Gary Markstein')
|
|
add('Glenn McCoy')
|
|
add('Jim Morin')
|
|
add('Jack Ohman')
|
|
add('Pat Oliphant')
|
|
add('Henry Payne')
|
|
add('Joel Pett')
|
|
add('Ted Rall')
|
|
add('Michael Ramirez')
|
|
add('Marshall Ramsey')
|
|
add('Rob Rogers')
|
|
add('Steve Sack')
|
|
add('Ben Sargent')
|
|
add('Drew Sheneman')
|
|
add('Small World')
|
|
add('Jeff Stahler')
|
|
add('Scott Stantis')
|
|
add('Dana Summers')
|
|
add('Paul Szep')
|
|
add('think')
|
|
add('Mike Thompson')
|
|
add('Tom Toles')
|
|
add('Gary Varvel')
|
|
add('ViewsAfrica')
|
|
add('ViewsAmerica')
|
|
add('ViewsAsia')
|
|
add('ViewsBusiness')
|
|
add('ViewsEurope')
|
|
add('ViewsLatinAmerica')
|
|
add('ViewsMidEast')
|
|
add('Views of the World')
|
|
add('Caricatures by Kerry Waghorn')
|
|
add('Dan Wasserman')
|
|
add('Signe Wilkinson')
|
|
add('Wit of the World')
|
|
|
|
# http://www.gocomics.com/explore/sherpa_list
|
|
add('0-60')
|
|
add('4 Punky Puppies', repl='-')
|
|
add('A Bene Placito', repl='-')
|
|
add('A Romantic Life', repl='-')
|
|
add('Abaca', repl='-')
|
|
add('Acadasia Down', repl='-')
|
|
add('ACME INKD', repl='-')
|
|
add('Admiral Squirt', repl='-')
|
|
add('Adult Children', repl='-')
|
|
add('Adventures of Marty and Turkey', repl='-')
|
|
add('Against The Grain', repl='-')
|
|
add('Alison Ward', repl='-')
|
|
add('Almost Grounded', repl='-')
|
|
add('AmaZn Events')
|
|
add('And now', repl='-')
|
|
add('Anecdote')
|
|
add('The Angry Gamer', repl='-')
|
|
add('Animal Antics', repl='-')
|
|
add('Apple Creek Comics', repl='-')
|
|
add('ArDuffle')
|
|
add('artPOWERS')
|
|
add('Asymptote')
|
|
add('Barefoot')
|
|
add('Barking Crayon', repl='-')
|
|
add('Batkid and Batrat', repl='-')
|
|
add('Beanie')
|
|
add('Beardo')
|
|
add('Beebleville')
|
|
add('The Bellies', repl='-')
|
|
add('BeMisery')
|
|
add('Benjamin Breadman', repl='-')
|
|
add('BERSERK ALERT', repl='-')
|
|
add('Best In Show', repl='-')
|
|
add('BETWEEN THE LINES', repl='-')
|
|
add('Biff and Riley', repl='-')
|
|
add('Big Monkey Comic', repl='-')
|
|
add('Blue Skies toons', repl='-')
|
|
add('Bluebonnets')
|
|
add('Bonner')
|
|
add('The Boobiehatch', repl='-')
|
|
add('Brilliant Mines', repl='-')
|
|
add('Broham')
|
|
add('Bubbles and Snail', repl='-')
|
|
add('BUNS')
|
|
add('The Bureaucrats', repl='-')
|
|
add('BUSHY TALES', repl='-')
|
|
add('Buster')
|
|
add('Buzza Wuzza', repl='-')
|
|
add('CAFFEINATED')
|
|
add('CANDY BLONDELL')
|
|
add('The Cardinal')
|
|
add('Carls Life')
|
|
add('Cartertoons')
|
|
add('Casey and Kyle', repl='-')
|
|
add('Charmys Army', repl='-')
|
|
add('Chubby Girl Comics')
|
|
add('Circus People')
|
|
add('Cockroach Comix')
|
|
add('Coffee Shop Tidbits', repl='-')
|
|
add('Confabulation')
|
|
add('Cow Sheep and a Gnome Named Helga', repl='-')
|
|
add('Crabbels')
|
|
add('Creek')
|
|
add('Critterdoodles')
|
|
add('Croc and Gator', repl='-')
|
|
add('Crumb Sherpa', repl='-')
|
|
add('Cubie n Bouncy', repl='-')
|
|
add('Daily Pinky', repl='-')
|
|
add('DALTON DOG', repl='-')
|
|
add('Dark WIndow', repl='-')
|
|
add('The Deadlys', repl='-')
|
|
add('Dell and Steve', repl='-')
|
|
add('Devin Crane Comic Strip Ghostwriter')
|
|
add('DitzAbled Princess', repl='-')
|
|
add('Dont Pick the Flowers', repl='-')
|
|
add('Doodle Days', repl='-')
|
|
add('double negative', repl='-')
|
|
add('Dr X', repl='-')
|
|
add('Dragin')
|
|
add('Dumb Question Bad Answer', repl='-')
|
|
add('Dust Specks', repl='-')
|
|
add('Eclectic Cartoons', repl='-')
|
|
add('Eddie')
|
|
add('EGGMEN')
|
|
add('Engag and Nevets', repl='-')
|
|
add('Enlightoons')
|
|
add('Ettore and Baldo', repl='-')
|
|
add('Faron Square', repl='-')
|
|
add('The Fast Lane', repl='-')
|
|
add('Featherweight')
|
|
add('For My Own Good', repl='-')
|
|
add('Frank and Steinway', repl='-')
|
|
add('Frank Blunt')
|
|
add('Frank Sonata', repl='-')
|
|
add('Frikk Frakk Frank', repl='-')
|
|
add('Frizzi Toons')
|
|
add('The Further Adventures of Mackie White', repl='-')
|
|
add('Generations')
|
|
add('Get A Grip', repl='-')
|
|
add('Give Over', repl='-')
|
|
add('Glenview Revue', repl='-')
|
|
add('The Golden Kid', repl='-')
|
|
add('Good with Coffee', repl='-')
|
|
add('Grandma Snoops')
|
|
add('Great Khan', repl='-')
|
|
add('The Green Monkeys')
|
|
add('Green Pieces', repl='-')
|
|
add('gregAbeg')
|
|
add('Grizz')
|
|
add('Hangin Out', repl='-')
|
|
add('Hank and Dales Our World', repl='-')
|
|
add('Haphazard Humor', repl='-')
|
|
add('Harambee Hills')
|
|
add('Harts Pass', repl='-')
|
|
add('hbenson7')
|
|
add('History Bluffs')
|
|
add('Hog Hollow', repl='-')
|
|
add('Hoodoo the Unwise Owl')
|
|
add('House of UnCommons', repl='-')
|
|
add('Humblebee and Bob', repl='-')
|
|
add('Humoresque')
|
|
add('I m a Dillo', repl='-')
|
|
add('The Ill Conceived Notions of Jehosophat Grymm', repl='-')
|
|
add('In The Sandbox')
|
|
add('INCOMPATIBLES')
|
|
add('Infinity Burger')
|
|
add('Inkee Doodles', repl='-')
|
|
add('Jack Radio Comics', repl='-')
|
|
add('Jillpoke Bohemia', repl='-')
|
|
add('JolleyStuff Browser', repl='-')
|
|
add('K Squared Comics', repl='-')
|
|
add('KALEECHI KORNERS', repl='-')
|
|
add('Keeping Up With Jones', repl='-')
|
|
add('Kid, Inc.', repl='-')
|
|
add('Kookie Crumbz', repl='-')
|
|
add('Kozmo of the Cosmos')
|
|
add('Larryville Blue', repl='-')
|
|
add('laughweb com', repl='-')
|
|
add('Leadbellies')
|
|
add('Life after Death', repl='-')
|
|
add('The Lighted Lab', repl='-')
|
|
add('The Lil Miesters', repl='-')
|
|
add('Lil Earl Loves to DRAW', repl='-')
|
|
add('Lucan')
|
|
add('Lum and Abner', repl='-')
|
|
add('Lumped In', repl='-')
|
|
add('Mad Mouse', repl='-')
|
|
add('MadDog Ghetto Cop')
|
|
add('Maggies Comics', repl='-')
|
|
add('Magic Coffee Hair', repl='-')
|
|
add('Mark on paper', repl='-')
|
|
add('Marty and Spud', repl='-')
|
|
add('Mary B Wary', repl='-')
|
|
add('Me and Jersey D')
|
|
add('Hoof Dog', repl='-')
|
|
add('Mindframe')
|
|
add('Misc Soup', repl='-')
|
|
add('Mixed Medications')
|
|
add('monday')
|
|
add('Noahs Island', repl='-')
|
|
add('Mort Monday', repl='-')
|
|
add('Mr Todd', repl='-')
|
|
add('Mustard and Boloney', repl='-')
|
|
add('My Guardian Grandpa', repl='-')
|
|
add('nano world', repl='-')
|
|
add('Navy Bean')
|
|
add('NeatStep')
|
|
add('Ned and Larry', repl='-')
|
|
add('Neighborhood Zone', repl='-')
|
|
add('No Place Like Holmes', repl='-')
|
|
add('Nobodys Home', repl='-')
|
|
add('Odds and Nubs', repl='-')
|
|
add('Of Mice and Mud', repl='-')
|
|
add('The Ogre', repl='-')
|
|
add('OH BABY')
|
|
add('Old Uncle Horaces book of Great Wisdom', repl='-')
|
|
add('On the Grind', repl='-')
|
|
add('One Fell Swoop', repl='-')
|
|
add('ONION and PEA', repl='-')
|
|
add('Oranges are Funny', repl='-')
|
|
add('Ordinary Bill')
|
|
add('PS')
|
|
add('Peanizles')
|
|
add('Peeples')
|
|
add('Petey and the Pack', repl='-')
|
|
add('PIGGENS')
|
|
add('PIGTIMES')
|
|
add('Plan B')
|
|
add('Police Limit')
|
|
add('Pop Dog', repl='-')
|
|
add('Primus the bad philosopher', repl='-')
|
|
add('Public Ed')
|
|
add('Putz')
|
|
add('Rackafracka')
|
|
add('Ralf the Destroyer', repl='-')
|
|
add('RANDUMB THOUGHTS', repl='-')
|
|
add('Rechid')
|
|
add('Risible')
|
|
add('Roger s Blues', repl='-')
|
|
add('Rogue Symmetry', repl='_')
|
|
add('Sabine')
|
|
add('SecondPrize')
|
|
add('Sherlock Unleashed', repl='-')
|
|
add('Sherpa Aid')
|
|
add('SickWit')
|
|
add('Sign Garden')
|
|
add('Single Dad Diaries', repl='-')
|
|
add('Skylarking')
|
|
add('Smith')
|
|
add('Snow Sez')
|
|
add('Soccer Earth', repl='-')
|
|
add('Sooky Rottweiler', repl='-')
|
|
add('SpaceTimeFunnies')
|
|
add('SparComics')
|
|
add('Spareroom')
|
|
add('Sports by Voort', repl='-')
|
|
add('Stanko Tibor')
|
|
add('STEPDAD')
|
|
add('Stranger Things', repl='-')
|
|
add('Suburban Fairy Tales')
|
|
add('Sue Really Rules', repl='-')
|
|
add('Sunny Side of Keuka', repl='-')
|
|
add('Sunny Street', repl='-')
|
|
add('Super Siblings', repl='-')
|
|
add('Surviving Single', repl='-')
|
|
add('There is Strangeness in the Universe', repl='-')
|
|
add('Thromp')
|
|
add('Tomversation')
|
|
add('Too crazy', repl='-')
|
|
add('Topic Toons')
|
|
add('Two Bits', repl='-')
|
|
add('Tyre and Kerb', repl='-')
|
|
add('Van Gogh', repl='-')
|
|
add('Vernscartoons')
|
|
add('Wages of Sin', repl='-')
|
|
add('Wendles Life')
|
|
add('Whiskey Falls', repl='-')
|
|
add('Whos On Deck', repl='-')
|
|
add('Windsock')
|
|
add('wrobbert cartoons')
|
|
add('Zhood Bahzvoi', repl='-')
|
|
add('Zonno s People', repl='-')
|
|
add('Zootopia')
|