From 5fa3ff18625f750a7381b57c9675ac5560002cbe Mon Sep 17 00:00:00 2001 From: Wardyn Date: Wed, 23 Nov 2022 00:49:27 -0800 Subject: [PATCH 01/12] first commit --- README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 -- 2.39.2 From e1c35d973441a8639ed8f6cf329a4b6220e2ddfe Mon Sep 17 00:00:00 2001 From: Wardyn Date: Wed, 23 Nov 2022 00:55:53 -0800 Subject: [PATCH 02/12] first commit --- lgfbot.py | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lgfbot.py diff --git a/lgfbot.py b/lgfbot.py new file mode 100644 index 0000000..485821a --- /dev/null +++ b/lgfbot.py @@ -0,0 +1,58 @@ +import random +from mastodon import Mastodon +import os + +if os.path.exists('./.lgfbot/') == False: + os.mkdir('./.lgfbot') + +if os.path.exists('./.lgfbot/lgf_client.secret') == False: + instance = input('Please enter your instance: ') + if not instance[:4] == 'http': + instance = 'https://' + instance + Mastodon.create_app('Hourly lgf', api_base_url = instance, to_file = './.lgfbot/lgf_client.secret') + +mastodon = Mastodon( + client_id = './.lgfbot/lgf_client.secret', +) + +if os.path.exists('./.lgfbot/lgf_user.secret') == False: + print('To post, lgfbot needs to generate an access token') + username = input('Enter your username: ') + password = input('Enter your password: ') + mastodon.log_in(username=username, password=password, scopes=['write:statuses'], to_file='./.lgfbot/lgf_user.secret') + + +mastodon = Mastodon( + access_token = './.lgfbot/lgf_user.secret' +) + +verbs = ['abide', 'accelerate', 'accept', 'accomplish', 'achieve', 'acquire', 'acted', 'activate', 'adapt', 'add', 'address', 'administer', 'admire', 'admit', 'adopt', 'advise', 'afford', 'agree', 'alert', 'alight', 'allow', 'altered', 'amuse', 'analyze', 'announce', 'annoy', 'answer', 'anticipate', 'apologize', 'appear', 'applaud', 'applied', 'appoint', 'appraise', 'appreciate', 'approve', 'arbitrate', 'argue', 'arise', 'arrange', 'arrest', 'arrive', 'ascertain', 'ask', 'assemble', 'assess', 'assist', 'assure', 'attach', 'attack', 'attain', 'attempt', 'attend', 'attract', 'audited', 'avoid', 'awake', 'back', 'bake', 'balance', 'ban', 'bang', 'bare', 'bat', 'bathe', 'battle', 'beam', 'bear', 'beat', 'beg', 'begin', 'behave', 'behold', 'belong', 'bend', 'beset', 'bet', 'bid', 'bind', 'bite', 'bleach', 'bleed', 'bless', 'blind', 'blink', 'blot', 'blow', 'blush', 'boast', 'boil', 'bolt', 'bomb', 'book', 'bore', 'borrow', 'bounce', 'bow', 'box', 'brake', 'branch', 'break', 'breathe', 'breed', 'brief', 'bring', 'broadcast', 'bruise', 'brush', 'bubble', 'budget', 'build', 'bump', 'burn', 'burst', 'bury', 'bust', 'buy', 'buze', 'calculate', 'call', 'camp', 'care', 'carry', 'carve', 'cast', 'catalog', 'catch', 'cause', 'challenge', 'change', 'charge', 'chart', 'chase', 'cheat', 'check', 'cheer', 'chew', 'choke', 'choose', 'chop', 'claim', 'clap', 'clarify', 'classify', 'clean', 'clear', 'cling', 'clip', 'close', 'clothe', 'coach', 'coil', 'collect', 'color', 'comb', 'come', 'command', 'communicate', 'compare', 'compete', 'compile', 'complain', 'complete', 'compose', 'compute', 'conceive', 'concentrate', 'conceptualize', 'concern', 'conclude', 'conduct', 'confess', 'confront', 'confuse', 'connect', 'conserve', 'consider', 'consist', 'consolidate', 'construct', 'consult', 'contain', 'continue', 'contract', 'control', 'convert', 'coordinate', 'copy', 'correct', 'correlate', 'cost', 'cough', 'counsel', 'count', 'cover', 'crack', 'crash', 'crawl', 'create', 'creep', 'critique', 'cross', 'crush', 'cry', 'cure', 'curl', 'curve', 'cut', 'cycle', 'dam', 'damage', 'dance', 'dare', 'deal', 'decay', 'deceive', 'decide', 'decorate', 'define', 'delay', 'delegate', 'delight', 'deliver', 'demonstrate', 'depend', 'describe', 'desert', 'deserve', 'design', 'destroy', 'detail', 'detect', 'determine', 'develop', 'devise', 'diagnose', 'dig', 'direct', 'disagree', 'disappear', 'disapprove', 'disarm', 'discover', 'dislike', 'dispense', 'display', 'disprove', 'dissect', 'distribute', 'dive', 'divert', 'divide', 'do', 'double', 'doubt', 'draft', 'drag', 'drain', 'dramatize', 'draw', 'dream', 'dress', 'drink', 'drip', 'drive', 'drop', 'drown', 'drum', 'dry', 'dust', 'dwell', 'earn', 'eat', 'edited', 'educate', 'eliminate', 'embarrass', 'employ', 'empty', 'enacted', 'encourage', 'end', 'endure', 'enforce', 'engineer', 'enhance', 'enjoy', 'enlist', 'ensure', 'enter', 'entertain', 'escape', 'establish', 'estimate', 'evaluate', 'examine', 'exceed', 'excite', 'excuse', 'execute', 'exercise', 'exhibit', 'exist', 'expand', 'expect', 'expedite', 'experiment', 'explain', 'explode', 'express', 'extend', 'extract', 'face', 'facilitate', 'fade', 'fail', 'fancy', 'fasten', 'fax', 'fear', 'feed', 'feel', 'fence', 'fetch', 'fight', 'file', 'fill', 'film', 'finalize', 'finance', 'find', 'fire', 'fit', 'fix', 'flap', 'flash', 'flee', 'fling', 'float', 'flood', 'flow', 'flower', 'fly', 'fold', 'follow', 'fool', 'forbid', 'force', 'forecast', 'forego', 'foresee', 'foretell', 'forget', 'forgive', 'form', 'formulate', 'forsake', 'frame', 'freeze', 'frighten', 'fry', 'gather', 'gaze', 'generate', 'get', 'give', 'glow', 'glue', 'go', 'govern', 'grab', 'graduate', 'grate', 'grease', 'greet', 'grin', 'grind', 'grip', 'groan', 'grow', 'guarantee', 'guard', 'guess', 'guide', 'hammer', 'hand', 'handle', 'handwrite', 'hang', 'happen', 'harass', 'harm', 'hate', 'haunt', 'head', 'heal', 'heap', 'hear', 'heat', 'help', 'hide', 'hit', 'hold', 'hook', 'hop', 'hope', 'hover', 'hug', 'hum', 'hunt', 'hurry', 'hurt', 'hypothesize', 'identify', 'ignore', 'illustrate', 'imagine', 'implement', 'impress', 'improve', 'improvise', 'include', 'increase', 'induce', 'influence', 'inform', 'initiate', 'inject', 'injure', 'inlay', 'innovate', 'input', 'inspect', 'inspire', 'install', 'institute', 'instruct', 'insure', 'integrate', 'intend', 'intensify', 'interest', 'interfere', 'interlay', 'interpret', 'interrupt', 'interview', 'introduce', 'invent', 'inventory', 'investigate', 'invite', 'irritate', 'itch', 'jail', 'jam', 'jog', 'join', 'joke', 'judge', 'juggle', 'jump', 'justify', 'keep', 'kept', 'kick', 'kill', 'kiss', 'kneel', 'knit', 'knock', 'knot', 'know', 'label', 'land', 'last', 'laugh', 'launch', 'lay', 'lead', 'lean', 'leap', 'learn', 'leave', 'lecture', 'led', 'lend', 'let', 'level', 'license', 'lick', 'lie', 'lifted', 'light', 'lighten', 'like', 'list', 'listen', 'live', 'load', 'locate', 'lock', 'log', 'long', 'look', 'lose', 'love', 'maintain', 'make', 'man', 'manage', 'manipulate', 'manufacture', 'map', 'march', 'mark', 'market', 'marry', 'match', 'mate', 'matter', 'mean', 'measure', 'meddle', 'mediate', 'meet', 'melt', 'melt', 'memorize', 'mend', 'mentor', 'milk', 'mine', 'mislead', 'miss', 'misspell', 'mistake', 'misunderstand', 'mix', 'moan', 'model', 'modify', 'monitor', 'moor', 'motivate', 'mourn', 'move', 'mow', 'muddle', 'mug', 'multiply', 'murder', 'nail', 'name', 'navigate', 'need', 'negotiate', 'nest', 'nod', 'nominate', 'normalize', 'note', 'notice', 'number', 'obey', 'object', 'observe', 'obtain', 'occur', 'offend', 'offer', 'officiate', 'open', 'operate', 'order', 'organize', 'oriented', 'originate', 'overcome', 'overdo', 'overdraw', 'overflow', 'overhear', 'overtake', 'overthrow', 'owe', 'own', 'pack', 'paddle', 'paint', 'park', 'part', 'participate', 'pass', 'paste', 'pat', 'pause', 'pay', 'peck', 'pedal', 'peel', 'peep', 'perceive', 'perfect', 'perform', 'permit', 'persuade', 'phone', 'photograph', 'pick', 'pilot', 'pinch', 'pine', 'pinpoint', 'pioneer', 'place', 'plan', 'plant', 'play', 'plead', 'please', 'plug', 'point', 'poke', 'polish', 'pop', 'possess', 'post', 'pour', 'practice', 'praised', 'pray', 'preach', 'precede', 'predict', 'prefer', 'prepare', 'prescribe', 'present', 'preserve', 'preset', 'preside', 'press', 'pretend', 'prevent', 'prick', 'print', 'process', 'procure', 'produce', 'profess', 'program', 'progress', 'project', 'promise', 'promote', 'proofread', 'propose', 'protect', 'prove', 'provide', 'publicize', 'pull', 'pump', 'punch', 'puncture', 'punish', 'purchase', 'push', 'put', 'qualify', 'question', 'queue', 'quit', 'race', 'radiate', 'rain', 'raise', 'rank', 'rate', 'reach', 'read', 'realign', 'realize', 'reason', 'receive', 'recognize', 'recommend', 'reconcile', 'record', 'recruit', 'reduce', 'refer', 'reflect', 'refuse', 'regret', 'regulate', 'rehabilitate', 'reign', 'reinforce', 'reject', 'rejoice', 'relate', 'relax', 'release', 'rely', 'remain', 'remember', 'remind', 'remove', 'render', 'reorganize', 'repair', 'repeat', 'replace', 'reply', 'report', 'represent', 'reproduce', 'request', 'rescue', 'research', 'resolve', 'respond', 'restored', 'restructure', 'retire', 'retrieve', 'return', 'review', 'revise', 'rhyme', 'rid', 'ride', 'ring', 'rinse', 'rise', 'risk', 'rob', 'rock', 'roll', 'rot', 'rub', 'ruin', 'rule', 'run', 'rush', 'sack', 'sail', 'satisfy', 'save', 'saw', 'say', 'scare', 'scatter', 'schedule', 'scold', 'scorch', 'scrape', 'scratch', 'scream', 'screw', 'scribble', 'scrub', 'seal', 'search', 'secure', 'see', 'seek', 'select', 'sell', 'send', 'sense', 'separate', 'serve', 'service', 'set', 'settle', 'sew', 'shade', 'shake', 'shape', 'share', 'shave', 'shear', 'shed', 'shelter', 'shine', 'shiver', 'shock', 'shoe', 'shoot', 'shop', 'show', 'shrink', 'shrug', 'shut', 'sigh', 'sign', 'signal', 'simplify', 'sin', 'sing', 'sink', 'sip', 'sit', 'sketch', 'ski', 'skip', 'slap', 'slay', 'sleep', 'slide', 'sling', 'slink', 'slip', 'slit', 'slow', 'smash', 'smell', 'smile', 'smite', 'smoke', 'snatch', 'sneak', 'sneeze', 'sniff', 'snore', 'snow', 'soak', 'solve', 'soothe', 'soothsay', 'sort', 'sound', 'sow', 'spare', 'spark', 'sparkle', 'speak', 'specify', 'speed', 'spell', 'spend', 'spill', 'spin', 'spit', 'split', 'spoil', 'spot', 'spray', 'spread', 'spring', 'sprout', 'squash', 'squeak', 'squeal', 'squeeze', 'stain', 'stamp', 'stand', 'stare', 'start', 'stay', 'steal', 'steer', 'step', 'stick', 'stimulate', 'sting', 'stink', 'stir', 'stitch', 'stop', 'store', 'strap', 'streamline', 'strengthen', 'stretch', 'stride', 'strike', 'string', 'strip', 'strive', 'stroke', 'structure', 'study', 'stuff', 'sublet', 'subtract', 'succeed', 'suck', 'suffer', 'suggest', 'suit', 'summarize', 'supervise', 'supply', 'support', 'suppose', 'surprise', 'surround', 'suspect', 'suspend', 'swear', 'sweat', 'sweep', 'swell', 'swim', 'swing', 'switch', 'symbolize', 'synthesize', 'systemize', 'tabulate', 'take', 'talk', 'tame', 'tap', 'target', 'taste', 'teach', 'tear', 'tease', 'telephone', 'tell', 'tempt', 'terrify', 'test', 'thank', 'thaw', 'think', 'thrive', 'throw', 'thrust', 'tick', 'tickle', 'tie', 'time', 'tip', 'tire', 'touch', 'tour', 'tow', 'trace', 'trade', 'train', 'transcribe', 'transfer', 'transform', 'translate', 'transport', 'trap', 'travel', 'tread', 'treat', 'tremble', 'trick', 'trip', 'trot', 'trouble', 'troubleshoot', 'trust', 'try', 'tug', 'tumble', 'turn', 'tutor', 'twist', 'type', 'undergo', 'understand', 'undertake', 'undress', 'unfasten', 'unify', 'unite', 'unlock', 'unpack', 'untidy', 'update', 'upgrade', 'uphold', 'upset', 'use', 'utilize', 'vanish', 'verbalize', 'verify', 'vex', 'visit', 'wail', 'wait', 'wake', 'walk', 'wander', 'want', 'warm', 'warn', 'wash', 'waste', 'watch', 'water', 'wave', 'wear', 'weave', 'wed', 'weep', 'weigh', 'welcome', 'wend', 'wet', 'whine', 'whip', 'whirl', 'whisper', 'whistle', 'win', 'wind', 'wink', 'wipe', 'wish', 'withdraw', 'withhold', 'withstand', 'wobble', 'wonder', 'work', 'worry', 'wrap', 'wreck', 'wrestle', 'wriggle', 'wring', 'write', 'x-ray', 'yawn', 'yell', 'zip', 'zoom'] +adjectives = ['abandoned', 'able', 'absolute', 'adorable', 'adventurous', 'academic', 'acceptable', 'acclaimed', 'accomplished', 'accurate', 'aching', 'acidic', 'acrobatic', 'active', 'actual', 'adept', 'admirable', 'admired', 'adolescent', 'adorable', 'adored', 'advanced', 'afraid', 'affectionate', 'aged', 'aggravating', 'aggressive', 'agile', 'agitated', 'agonizing', 'agreeable', 'ajar', 'alarmed', 'alarming', 'alert', 'alienated', 'alive', 'all', 'altruistic', 'amazing', 'ambitious', 'ample', 'amused', 'amusing', 'anchored', 'ancient', 'angelic', 'angry', 'anguished', 'animated', 'annual', 'another', 'antique', 'anxious', 'any', 'apprehensive', 'appropriate', 'apt', 'arctic', 'arid', 'aromatic', 'artistic', 'ashamed', 'assured', 'astonishing', 'athletic', 'attached', 'attentive', 'attractive', 'austere', 'authentic', 'authorized', 'automatic', 'avaricious', 'average', 'aware', 'awesome', 'awful', 'awkward', 'babyish', 'bad', 'back', 'baggy', 'bare', 'barren', 'basic', 'beautiful', 'belated', 'beloved', 'beneficial', 'better', 'best', 'bewitched', 'big', 'big-hearted', 'biodegradable', 'bite-sized', 'bitter', 'black', 'black-and-white', 'bland', 'blank', 'blaring', 'bleak', 'blind', 'blissful', 'blond', 'blue', 'blushing', 'bogus', 'boiling', 'bold', 'bony', 'boring', 'bossy', 'both', 'bouncy', 'bountiful', 'bowed', 'brave', 'breakable', 'brief', 'bright', 'brilliant', 'brisk', 'broken', 'bronze', 'brown', 'bruised', 'bubbly', 'bulky', 'bumpy', 'buoyant', 'burdensome', 'burly', 'bustling', 'busy', 'buttery', 'buzzing', 'calculating', 'calm', 'candid', 'canine', 'capital', 'carefree', 'careful', 'careless', 'caring', 'cautious', 'cavernous', 'celebrated', 'charming', 'cheap', 'cheerful', 'cheery', 'chief', 'chilly', 'chubby', 'circular', 'classic', 'clean', 'clear', 'clear-cut', 'clever', 'close', 'closed', 'cloudy', 'clueless', 'clumsy', 'cluttered', 'coarse', 'cold', 'colorful', 'colorless', 'colossal', 'comfortable', 'common', 'compassionate', 'competent', 'complete', 'complex', 'complicated', 'composed', 'concerned', 'concrete', 'confused', 'conscious', 'considerate', 'constant', 'content', 'conventional', 'cooked', 'cool', 'cooperative', 'coordinated', 'corny', 'corrupt', 'costly', 'courageous', 'courteous', 'crafty', 'crazy', 'creamy', 'creative', 'creepy', 'criminal', 'crisp', 'critical', 'crooked', 'crowded', 'cruel', 'crushing', 'cuddly', 'cultivated', 'cultured', 'cumbersome', 'curly', 'curvy', 'cute', 'cylindrical', 'damaged', 'damp', 'dangerous', 'dapper', 'daring', 'darling', 'dark', 'dazzling', 'dead', 'deadly', 'deafening', 'dear', 'dearest', 'decent', 'decimal', 'decisive', 'deep', 'defenseless', 'defensive', 'defiant', 'deficient', 'definite', 'definitive', 'delayed', 'delectable', 'delicious', 'delightful', 'delirious', 'demanding', 'dense', 'dental', 'dependable', 'dependent', 'descriptive', 'deserted', 'detailed', 'determined', 'devoted', 'different', 'difficult', 'digital', 'diligent', 'dim', 'dimpled', 'dimwitted', 'direct', 'disastrous', 'discrete', 'disfigured', 'disgusting', 'disloyal', 'dismal', 'distant', 'downright', 'dreary', 'dirty', 'disguised', 'dishonest', 'dismal', 'distant', 'distinct', 'distorted', 'dizzy', 'dopey', 'doting', 'double', 'downright', 'drab', 'drafty', 'dramatic', 'dreary', 'droopy', 'dry', 'dual', 'dull', 'dutiful', 'each', 'eager', 'earnest', 'early', 'easy', 'easy-going', 'ecstatic', 'edible', 'educated', 'elaborate', 'elastic', 'elated', 'elderly', 'electric', 'elegant', 'elementary', 'elliptical', 'embarrassed', 'embellished', 'eminent', 'emotional', 'empty', 'enchanted', 'enchanting', 'energetic', 'enlightened', 'enormous', 'enraged', 'entire', 'envious', 'equal', 'equatorial', 'essential', 'esteemed', 'ethical', 'euphoric', 'even', 'evergreen', 'everlasting', 'every', 'evil', 'exalted', 'excellent', 'exemplary', 'exhausted', 'excitable', 'excited', 'exciting', 'exotic', 'expensive', 'experienced', 'expert', 'extraneous', 'extroverted', 'extra-large', 'extra-small', 'fabulous', 'failing', 'faint', 'fair', 'faithful', 'fake', 'false', 'familiar', 'famous', 'fancy', 'fantastic', 'far', 'faraway', 'far-flung', 'far-off', 'fast', 'fat', 'fatal', 'fatherly', 'favorable', 'favorite', 'fearful', 'fearless', 'feisty', 'feline', 'female', 'feminine', 'few', 'fickle', 'filthy', 'fine', 'finished', 'firm', 'first', 'firsthand', 'fitting', 'fixed', 'flaky', 'flamboyant', 'flashy', 'flat', 'flawed', 'flawless', 'flickering', 'flimsy', 'flippant', 'flowery', 'fluffy', 'fluid', 'flustered', 'focused', 'fond', 'foolhardy', 'foolish', 'forceful', 'forked', 'formal', 'forsaken', 'forthright', 'fortunate', 'fragrant', 'frail', 'frank', 'frayed', 'free', 'French', 'fresh', 'frequent', 'friendly', 'frightened', 'frightening', 'frigid', 'frilly', 'frizzy', 'frivolous', 'front', 'frosty', 'frozen', 'frugal', 'fruitful', 'full', 'fumbling', 'functional', 'funny', 'fussy', 'fuzzy', 'gargantuan', 'gaseous', 'general', 'generous', 'gentle', 'genuine', 'giant', 'giddy', 'gigantic', 'gifted', 'giving', 'glamorous', 'glaring', 'glass', 'gleaming', 'gleeful', 'glistening', 'glittering', 'gloomy', 'glorious', 'glossy', 'glum', 'golden', 'good', 'good-natured', 'gorgeous', 'graceful', 'gracious', 'grand', 'grandiose', 'granular', 'grateful', 'grave', 'gray', 'great', 'greedy', 'green', 'gregarious', 'grim', 'grimy', 'gripping', 'grizzled', 'gross', 'grotesque', 'grouchy', 'grounded', 'growing', 'growling', 'grown', 'grubby', 'gruesome', 'grumpy', 'guilty', 'gullible', 'gummy', 'hairy', 'half', 'handmade', 'handsome', 'handy', 'happy', 'happy-go-lucky', 'hard', 'hard-to-find', 'harmful', 'harmless', 'harmonious', 'harsh', 'hasty', 'hateful', 'haunting', 'healthy', 'heartfelt', 'hearty', 'heavenly', 'heavy', 'hefty', 'helpful', 'helpless', 'hidden', 'hideous', 'high', 'high-level', 'hilarious', 'hoarse', 'hollow', 'homely', 'honest', 'honorable', 'honored', 'hopeful', 'horrible', 'hospitable', 'hot', 'huge', 'humble', 'humiliating', 'humming', 'humongous', 'hungry', 'hurtful', 'husky', 'icky', 'icy', 'ideal', 'idealistic', 'identical', 'idle', 'idiotic', 'idolized', 'ignorant', 'ill', 'illegal', 'ill-fated', 'ill-informed', 'illiterate', 'illustrious', 'imaginary', 'imaginative', 'immaculate', 'immaterial', 'immediate', 'immense', 'impassioned', 'impeccable', 'impartial', 'imperfect', 'imperturbable', 'impish', 'impolite', 'important', 'impossible', 'impractical', 'impressionable', 'impressive', 'improbable', 'impure', 'inborn', 'incomparable', 'incompatible', 'incomplete', 'inconsequential', 'incredible', 'indelible', 'inexperienced', 'indolent', 'infamous', 'infantile', 'infatuated', 'inferior', 'infinite', 'informal', 'innocent', 'insecure', 'insidious', 'insignificant', 'insistent', 'instructive', 'insubstantial', 'intelligent', 'intent', 'intentional', 'interesting', 'internal', 'international', 'intrepid', 'ironclad', 'irresponsible', 'irritating', 'itchy', 'jaded', 'jagged', 'jam-packed', 'jaunty', 'jealous', 'jittery', 'joint', 'jolly', 'jovial', 'joyful', 'joyous', 'jubilant', 'judicious', 'juicy', 'jumbo', 'junior', 'jumpy', 'juvenile', 'kaleidoscopic', 'keen', 'key', 'kind', 'kindhearted', 'kindly', 'klutzy', 'knobby', 'knotty', 'knowledgeable', 'knowing', 'known', 'kooky', 'kosher', 'lame', 'lanky', 'large', 'last', 'lasting', 'late', 'lavish', 'lawful', 'lazy', 'leading', 'lean', 'leafy', 'left', 'legal', 'legitimate', 'light', 'lighthearted', 'likable', 'likely', 'limited', 'limp', 'limping', 'linear', 'lined', 'liquid', 'little', 'live', 'lively', 'livid', 'loathsome', 'lone', 'lonely', 'long', 'long-term', 'loose', 'lopsided', 'lost', 'loud', 'lovable', 'lovely', 'loving', 'low', 'loyal', 'lucky', 'lumbering', 'luminous', 'lumpy', 'lustrous', 'luxurious', 'mad', 'made-up', 'magnificent', 'majestic', 'major', 'male', 'mammoth', 'married', 'marvelous', 'masculine', 'massive', 'mature', 'meager', 'mealy', 'mean', 'measly', 'meaty', 'medical', 'mediocre', 'medium', 'meek', 'mellow', 'melodic', 'memorable', 'menacing', 'merry', 'messy', 'metallic', 'mild', 'milky', 'mindless', 'miniature', 'minor', 'minty', 'miserable', 'miserly', 'misguided', 'misty', 'mixed', 'modern', 'modest', 'moist', 'monstrous', 'monthly', 'monumental', 'moral', 'mortified', 'motherly', 'motionless', 'mountainous', 'muddy', 'muffled', 'multicolored', 'mundane', 'murky', 'mushy', 'musty', 'muted', 'mysterious', 'naive', 'narrow', 'nasty', 'natural', 'naughty', 'nautical', 'near', 'neat', 'necessary', 'needy', 'negative', 'neglected', 'negligible', 'neighboring', 'nervous', 'new', 'next', 'nice', 'nifty', 'nimble', 'nippy', 'nocturnal', 'noisy', 'nonstop', 'normal', 'notable', 'noted', 'noteworthy', 'novel', 'noxious', 'numb', 'nutritious', 'nutty', 'obedient', 'obese', 'oblong', 'oily', 'oblong', 'obvious', 'occasional', 'odd', 'oddball', 'offbeat', 'offensive', 'official', 'old', 'old-fashioned', 'only', 'open', 'optimal', 'optimistic', 'opulent', 'orange', 'orderly', 'organic', 'ornate', 'ornery', 'ordinary', 'original', 'other', 'our', 'outlying', 'outgoing', 'outlandish', 'outrageous', 'outstanding', 'oval', 'overcooked', 'overdue', 'overjoyed', 'overlooked', 'palatable', 'pale', 'paltry', 'parallel', 'parched', 'partial', 'passionate', 'past', 'pastel', 'peaceful', 'peppery', 'perfect', 'perfumed', 'periodic', 'perky', 'personal', 'pertinent', 'pesky', 'pessimistic', 'petty', 'phony', 'physical', 'piercing', 'pink', 'pitiful', 'plain', 'plaintive', 'plastic', 'playful', 'pleasant', 'pleased', 'pleasing', 'plump', 'plush', 'polished', 'polite', 'political', 'pointed', 'pointless', 'poised', 'poor', 'popular', 'portly', 'posh', 'positive', 'possible', 'potable', 'powerful', 'powerless', 'practical', 'precious', 'present', 'prestigious', 'pretty', 'precious', 'previous', 'pricey', 'prickly', 'primary', 'prime', 'pristine', 'private', 'prize', 'probable', 'productive', 'profitable', 'profuse', 'proper', 'proud', 'prudent', 'punctual', 'pungent', 'puny', 'pure', 'purple', 'pushy', 'putrid', 'puzzled', 'puzzling', 'quaint', 'qualified', 'quarrelsome', 'quarterly', 'queasy', 'querulous', 'questionable', 'quick', 'quick-witted', 'quiet', 'quintessential', 'quirky', 'quixotic', 'quizzical', 'radiant', 'ragged', 'rapid', 'rare', 'rash', 'raw', 'recent', 'reckless', 'rectangular', 'ready', 'real', 'realistic', 'reasonable', 'red', 'reflecting', 'regal', 'regular', 'reliable', 'relieved', 'remarkable', 'remorseful', 'remote', 'repentant', 'required', 'respectful', 'responsible', 'repulsive', 'revolving', 'rewarding', 'rich', 'rigid', 'right', 'ringed', 'ripe', 'roasted', 'robust', 'rosy', 'rotating', 'rotten', 'rough', 'round', 'rowdy', 'royal', 'rubbery', 'rundown', 'ruddy', 'rude', 'runny', 'rural', 'rusty', 'sad', 'safe', 'salty', 'same', 'sandy', 'sane', 'sarcastic', 'sardonic', 'satisfied', 'scaly', 'scarce', 'scared', 'scary', 'scented', 'scholarly', 'scientific', 'scornful', 'scratchy', 'scrawny', 'second', 'secondary', 'second-hand', 'secret', 'self-assured', 'self-reliant', 'selfish', 'sentimental', 'separate', 'serene', 'serious', 'serpentine', 'several', 'severe', 'shabby', 'shadowy', 'shady', 'shallow', 'shameful', 'shameless', 'sharp', 'shimmering', 'shiny', 'shocked', 'shocking', 'shoddy', 'short', 'short-term', 'showy', 'shrill', 'shy', 'sick', 'silent', 'silky', 'silly', 'silver', 'similar', 'simple', 'simplistic', 'sinful', 'single', 'sizzling', 'skeletal', 'skinny', 'sleepy', 'slight', 'slim', 'slimy', 'slippery', 'slow', 'slushy', 'small', 'smart', 'smoggy', 'smooth', 'smug', 'snappy', 'snarling', 'sneaky', 'sniveling', 'snoopy', 'sociable', 'soft', 'soggy', 'solid', 'somber', 'some', 'spherical', 'sophisticated', 'sore', 'sorrowful', 'soulful', 'soupy', 'sour', 'Spanish', 'sparkling', 'sparse', 'specific', 'spectacular', 'speedy', 'spicy', 'spiffy', 'spirited', 'spiteful', 'splendid', 'spotless', 'spotted', 'spry', 'square', 'squeaky', 'squiggly', 'stable', 'staid', 'stained', 'stale', 'standard', 'starchy', 'stark', 'starry', 'steep', 'sticky', 'stiff', 'stimulating', 'stingy', 'stormy', 'straight', 'strange', 'steel', 'strict', 'strident', 'striking', 'striped', 'strong', 'studious', 'stunning', 'stupendous', 'stupid', 'sturdy', 'stylish', 'subdued', 'submissive', 'substantial', 'subtle', 'suburban', 'sudden', 'sugary', 'sunny', 'super', 'superb', 'superficial', 'superior', 'supportive', 'sure-footed', 'surprised', 'suspicious', 'svelte', 'sweaty', 'sweet', 'sweltering', 'swift', 'sympathetic', 'tall', 'talkative', 'tame', 'tan', 'tangible', 'tart', 'tasty', 'tattered', 'taut', 'tedious', 'teeming', 'tempting', 'tender', 'tense', 'tepid', 'terrible', 'terrific', 'testy', 'thankful', 'that', 'these', 'thick', 'thin', 'third', 'thirsty', 'this', 'thorough', 'thorny', 'those', 'thoughtful', 'threadbare', 'thrifty', 'thunderous', 'tidy', 'tight', 'timely', 'tinted', 'tiny', 'tired', 'torn', 'total', 'tough', 'traumatic', 'treasured', 'tremendous', 'tragic', 'trained', 'tremendous', 'triangular', 'tricky', 'trifling', 'trim', 'trivial', 'troubled', 'true', 'trusting', 'trustworthy', 'trusty', 'truthful', 'tubby', 'turbulent', 'twin', 'ugly', 'ultimate', 'unacceptable', 'unaware', 'uncomfortable', 'uncommon', 'unconscious', 'understated', 'unequaled', 'uneven', 'unfinished', 'unfit', 'unfolded', 'unfortunate', 'unhappy', 'unhealthy', 'uniform', 'unimportant', 'unique', 'united', 'unkempt', 'unknown', 'unlawful', 'unlined', 'unlucky', 'unnatural', 'unpleasant', 'unrealistic', 'unripe', 'unruly', 'unselfish', 'unsightly', 'unsteady', 'unsung', 'untidy', 'untimely', 'untried', 'untrue', 'unused', 'unusual', 'unwelcome', 'unwieldy', 'unwilling', 'unwitting', 'unwritten', 'upbeat', 'upright', 'upset', 'urban', 'usable', 'used', 'useful', 'useless', 'utilized', 'utter', 'vacant', 'vague', 'vain', 'valid', 'valuable', 'vapid', 'variable', 'vast', 'velvety', 'venerated', 'vengeful', 'verifiable', 'vibrant', 'vicious', 'victorious', 'vigilant', 'vigorous', 'villainous', 'violet', 'violent', 'virtual', 'virtuous', 'visible', 'vital', 'vivacious', 'vivid', 'voluminous', 'wan', 'warlike', 'warm', 'warmhearted', 'warped', 'wary', 'wasteful', 'watchful', 'waterlogged', 'watery', 'wavy', 'wealthy', 'weak', 'weary', 'webbed', 'wee', 'weekly', 'weepy', 'weighty', 'weird', 'welcome', 'well-documented', 'well-groomed', 'well-informed', 'well-lit', 'well-made', 'well-off', 'well-to-do', 'well-worn', 'wet', 'which', 'whimsical', 'whirlwind', 'whispered', 'white', 'whole', 'whopping', 'wicked', 'wide', 'wide-eyed', 'wiggly', 'wild', 'willing', 'wilted', 'winding', 'windy', 'winged', 'wiry', 'wise', 'witty', 'wobbly', 'woeful', 'wonderful', 'wooden', 'woozy', 'wordy', 'worldly', 'worn', 'worried', 'worrisome', 'worse', 'worst', 'worthless', 'worthwhile', 'worthy', 'wrathful', 'wretched', 'writhing', 'wrong', 'wry', 'yawning', 'yearly', 'yellow', 'yellowish', 'young', 'youthful', 'yummy', 'zany', 'zealous', 'zesty', 'zigzag'] +postform = random.randrange(1, 4) +gender = random.randrange(1, 4) +if gender == 1: + gender = 'lgf' +elif gender == 2: + gender = 'lbf' +elif gender == 3: + gender = 'elf' +verb = random.choice(verbs) +if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: + verb = verb[:-2] +if verb[-1] in ['a', 'i', 'o', 'u']: + verb = verb + 'es' +elif verb[-1] in ['s', 'x'] or verb[-2] == ['s', 'x'] or verb[-2:] == 'ch': + verb = verb + 'es' +elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: + verb = verb[:-1] + 'ies' +else: + verb = verb + 's' +adjective = random.choice(adjectives) +if postform == 1: + content = adjective + ' ' + gender + ' who ' + verb +elif postform == 2: + content = adjective + ' ' + gender +elif postform == 3: + content = gender + ' who ' + verb +print(content) +mastodon.status_post(content, visibility='unlisted') \ No newline at end of file -- 2.39.2 From 809f9d272be83e8cd15628399846a1f0ce262c2e Mon Sep 17 00:00:00 2001 From: Wardyn Date: Wed, 23 Nov 2022 00:57:44 -0800 Subject: [PATCH 03/12] add license --- LICENSE | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..7a3094a --- /dev/null +++ b/LICENSE @@ -0,0 +1,11 @@ +DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE +Version 2, December 2004 + +Copyright (C) 2004 Sam Hocevar + +Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. + +DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. -- 2.39.2 From 2dd46c4583ddbff001895732b0f2dc7e45778ed4 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Wed, 4 Jan 2023 14:29:42 -0800 Subject: [PATCH 04/12] fixed issue in verb conjugation --- lgfbot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgfbot.py b/lgfbot.py index 485821a..d2d2dcc 100644 --- a/lgfbot.py +++ b/lgfbot.py @@ -41,7 +41,7 @@ if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: verb = verb[:-2] if verb[-1] in ['a', 'i', 'o', 'u']: verb = verb + 'es' -elif verb[-1] in ['s', 'x'] or verb[-2] == ['s', 'x'] or verb[-2:] == 'ch': +elif verb[-1] in ['s', 'x'] or verb[-2] in ['s', 'x'] or verb[-2:] == 'ch': verb = verb + 'es' elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: verb = verb[:-1] + 'ies' -- 2.39.2 From 4df77bd4b2608f09323cebdf74cecea55380a22c Mon Sep 17 00:00:00 2001 From: Kay Faraday Date: Thu, 12 Jan 2023 00:05:20 +0000 Subject: [PATCH 05/12] various minor improvements - use random.choice() instead of random.randrange() and checking for each number - use proper `not` operator instead of `== False` - use format strings instead of manually concatenating the components of the post - use getpass.getpass() instead of input() for entering the user's password - make the script executable using a shebang and chmod +x - gitignore .lgfbot/ - use sets instead of lists for static containment checks --- .gitignore | 1 + lgfbot.py | 46 +++++++++++++++++++++------------------------- 2 files changed, 22 insertions(+), 25 deletions(-) create mode 100644 .gitignore mode change 100644 => 100755 lgfbot.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e4c1c93 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.lgfbot diff --git a/lgfbot.py b/lgfbot.py old mode 100644 new mode 100755 index d2d2dcc..e6403e8 --- a/lgfbot.py +++ b/lgfbot.py @@ -1,13 +1,16 @@ +#!/usr/bin/env python + import random +from getpass import getpass from mastodon import Mastodon import os -if os.path.exists('./.lgfbot/') == False: +if not os.path.exists('./.lgfbot/'): os.mkdir('./.lgfbot') -if os.path.exists('./.lgfbot/lgf_client.secret') == False: +if not os.path.exists('./.lgfbot/lgf_client.secret'): instance = input('Please enter your instance: ') - if not instance[:4] == 'http': + if instance[:4] != 'http': instance = 'https://' + instance Mastodon.create_app('Hourly lgf', api_base_url = instance, to_file = './.lgfbot/lgf_client.secret') @@ -15,10 +18,10 @@ mastodon = Mastodon( client_id = './.lgfbot/lgf_client.secret', ) -if os.path.exists('./.lgfbot/lgf_user.secret') == False: +if not os.path.exists('./.lgfbot/lgf_user.secret'): print('To post, lgfbot needs to generate an access token') username = input('Enter your username: ') - password = input('Enter your password: ') + password = getpass('Enter your password: ') mastodon.log_in(username=username, password=password, scopes=['write:statuses'], to_file='./.lgfbot/lgf_user.secret') @@ -28,31 +31,24 @@ mastodon = Mastodon( verbs = ['abide', 'accelerate', 'accept', 'accomplish', 'achieve', 'acquire', 'acted', 'activate', 'adapt', 'add', 'address', 'administer', 'admire', 'admit', 'adopt', 'advise', 'afford', 'agree', 'alert', 'alight', 'allow', 'altered', 'amuse', 'analyze', 'announce', 'annoy', 'answer', 'anticipate', 'apologize', 'appear', 'applaud', 'applied', 'appoint', 'appraise', 'appreciate', 'approve', 'arbitrate', 'argue', 'arise', 'arrange', 'arrest', 'arrive', 'ascertain', 'ask', 'assemble', 'assess', 'assist', 'assure', 'attach', 'attack', 'attain', 'attempt', 'attend', 'attract', 'audited', 'avoid', 'awake', 'back', 'bake', 'balance', 'ban', 'bang', 'bare', 'bat', 'bathe', 'battle', 'beam', 'bear', 'beat', 'beg', 'begin', 'behave', 'behold', 'belong', 'bend', 'beset', 'bet', 'bid', 'bind', 'bite', 'bleach', 'bleed', 'bless', 'blind', 'blink', 'blot', 'blow', 'blush', 'boast', 'boil', 'bolt', 'bomb', 'book', 'bore', 'borrow', 'bounce', 'bow', 'box', 'brake', 'branch', 'break', 'breathe', 'breed', 'brief', 'bring', 'broadcast', 'bruise', 'brush', 'bubble', 'budget', 'build', 'bump', 'burn', 'burst', 'bury', 'bust', 'buy', 'buze', 'calculate', 'call', 'camp', 'care', 'carry', 'carve', 'cast', 'catalog', 'catch', 'cause', 'challenge', 'change', 'charge', 'chart', 'chase', 'cheat', 'check', 'cheer', 'chew', 'choke', 'choose', 'chop', 'claim', 'clap', 'clarify', 'classify', 'clean', 'clear', 'cling', 'clip', 'close', 'clothe', 'coach', 'coil', 'collect', 'color', 'comb', 'come', 'command', 'communicate', 'compare', 'compete', 'compile', 'complain', 'complete', 'compose', 'compute', 'conceive', 'concentrate', 'conceptualize', 'concern', 'conclude', 'conduct', 'confess', 'confront', 'confuse', 'connect', 'conserve', 'consider', 'consist', 'consolidate', 'construct', 'consult', 'contain', 'continue', 'contract', 'control', 'convert', 'coordinate', 'copy', 'correct', 'correlate', 'cost', 'cough', 'counsel', 'count', 'cover', 'crack', 'crash', 'crawl', 'create', 'creep', 'critique', 'cross', 'crush', 'cry', 'cure', 'curl', 'curve', 'cut', 'cycle', 'dam', 'damage', 'dance', 'dare', 'deal', 'decay', 'deceive', 'decide', 'decorate', 'define', 'delay', 'delegate', 'delight', 'deliver', 'demonstrate', 'depend', 'describe', 'desert', 'deserve', 'design', 'destroy', 'detail', 'detect', 'determine', 'develop', 'devise', 'diagnose', 'dig', 'direct', 'disagree', 'disappear', 'disapprove', 'disarm', 'discover', 'dislike', 'dispense', 'display', 'disprove', 'dissect', 'distribute', 'dive', 'divert', 'divide', 'do', 'double', 'doubt', 'draft', 'drag', 'drain', 'dramatize', 'draw', 'dream', 'dress', 'drink', 'drip', 'drive', 'drop', 'drown', 'drum', 'dry', 'dust', 'dwell', 'earn', 'eat', 'edited', 'educate', 'eliminate', 'embarrass', 'employ', 'empty', 'enacted', 'encourage', 'end', 'endure', 'enforce', 'engineer', 'enhance', 'enjoy', 'enlist', 'ensure', 'enter', 'entertain', 'escape', 'establish', 'estimate', 'evaluate', 'examine', 'exceed', 'excite', 'excuse', 'execute', 'exercise', 'exhibit', 'exist', 'expand', 'expect', 'expedite', 'experiment', 'explain', 'explode', 'express', 'extend', 'extract', 'face', 'facilitate', 'fade', 'fail', 'fancy', 'fasten', 'fax', 'fear', 'feed', 'feel', 'fence', 'fetch', 'fight', 'file', 'fill', 'film', 'finalize', 'finance', 'find', 'fire', 'fit', 'fix', 'flap', 'flash', 'flee', 'fling', 'float', 'flood', 'flow', 'flower', 'fly', 'fold', 'follow', 'fool', 'forbid', 'force', 'forecast', 'forego', 'foresee', 'foretell', 'forget', 'forgive', 'form', 'formulate', 'forsake', 'frame', 'freeze', 'frighten', 'fry', 'gather', 'gaze', 'generate', 'get', 'give', 'glow', 'glue', 'go', 'govern', 'grab', 'graduate', 'grate', 'grease', 'greet', 'grin', 'grind', 'grip', 'groan', 'grow', 'guarantee', 'guard', 'guess', 'guide', 'hammer', 'hand', 'handle', 'handwrite', 'hang', 'happen', 'harass', 'harm', 'hate', 'haunt', 'head', 'heal', 'heap', 'hear', 'heat', 'help', 'hide', 'hit', 'hold', 'hook', 'hop', 'hope', 'hover', 'hug', 'hum', 'hunt', 'hurry', 'hurt', 'hypothesize', 'identify', 'ignore', 'illustrate', 'imagine', 'implement', 'impress', 'improve', 'improvise', 'include', 'increase', 'induce', 'influence', 'inform', 'initiate', 'inject', 'injure', 'inlay', 'innovate', 'input', 'inspect', 'inspire', 'install', 'institute', 'instruct', 'insure', 'integrate', 'intend', 'intensify', 'interest', 'interfere', 'interlay', 'interpret', 'interrupt', 'interview', 'introduce', 'invent', 'inventory', 'investigate', 'invite', 'irritate', 'itch', 'jail', 'jam', 'jog', 'join', 'joke', 'judge', 'juggle', 'jump', 'justify', 'keep', 'kept', 'kick', 'kill', 'kiss', 'kneel', 'knit', 'knock', 'knot', 'know', 'label', 'land', 'last', 'laugh', 'launch', 'lay', 'lead', 'lean', 'leap', 'learn', 'leave', 'lecture', 'led', 'lend', 'let', 'level', 'license', 'lick', 'lie', 'lifted', 'light', 'lighten', 'like', 'list', 'listen', 'live', 'load', 'locate', 'lock', 'log', 'long', 'look', 'lose', 'love', 'maintain', 'make', 'man', 'manage', 'manipulate', 'manufacture', 'map', 'march', 'mark', 'market', 'marry', 'match', 'mate', 'matter', 'mean', 'measure', 'meddle', 'mediate', 'meet', 'melt', 'melt', 'memorize', 'mend', 'mentor', 'milk', 'mine', 'mislead', 'miss', 'misspell', 'mistake', 'misunderstand', 'mix', 'moan', 'model', 'modify', 'monitor', 'moor', 'motivate', 'mourn', 'move', 'mow', 'muddle', 'mug', 'multiply', 'murder', 'nail', 'name', 'navigate', 'need', 'negotiate', 'nest', 'nod', 'nominate', 'normalize', 'note', 'notice', 'number', 'obey', 'object', 'observe', 'obtain', 'occur', 'offend', 'offer', 'officiate', 'open', 'operate', 'order', 'organize', 'oriented', 'originate', 'overcome', 'overdo', 'overdraw', 'overflow', 'overhear', 'overtake', 'overthrow', 'owe', 'own', 'pack', 'paddle', 'paint', 'park', 'part', 'participate', 'pass', 'paste', 'pat', 'pause', 'pay', 'peck', 'pedal', 'peel', 'peep', 'perceive', 'perfect', 'perform', 'permit', 'persuade', 'phone', 'photograph', 'pick', 'pilot', 'pinch', 'pine', 'pinpoint', 'pioneer', 'place', 'plan', 'plant', 'play', 'plead', 'please', 'plug', 'point', 'poke', 'polish', 'pop', 'possess', 'post', 'pour', 'practice', 'praised', 'pray', 'preach', 'precede', 'predict', 'prefer', 'prepare', 'prescribe', 'present', 'preserve', 'preset', 'preside', 'press', 'pretend', 'prevent', 'prick', 'print', 'process', 'procure', 'produce', 'profess', 'program', 'progress', 'project', 'promise', 'promote', 'proofread', 'propose', 'protect', 'prove', 'provide', 'publicize', 'pull', 'pump', 'punch', 'puncture', 'punish', 'purchase', 'push', 'put', 'qualify', 'question', 'queue', 'quit', 'race', 'radiate', 'rain', 'raise', 'rank', 'rate', 'reach', 'read', 'realign', 'realize', 'reason', 'receive', 'recognize', 'recommend', 'reconcile', 'record', 'recruit', 'reduce', 'refer', 'reflect', 'refuse', 'regret', 'regulate', 'rehabilitate', 'reign', 'reinforce', 'reject', 'rejoice', 'relate', 'relax', 'release', 'rely', 'remain', 'remember', 'remind', 'remove', 'render', 'reorganize', 'repair', 'repeat', 'replace', 'reply', 'report', 'represent', 'reproduce', 'request', 'rescue', 'research', 'resolve', 'respond', 'restored', 'restructure', 'retire', 'retrieve', 'return', 'review', 'revise', 'rhyme', 'rid', 'ride', 'ring', 'rinse', 'rise', 'risk', 'rob', 'rock', 'roll', 'rot', 'rub', 'ruin', 'rule', 'run', 'rush', 'sack', 'sail', 'satisfy', 'save', 'saw', 'say', 'scare', 'scatter', 'schedule', 'scold', 'scorch', 'scrape', 'scratch', 'scream', 'screw', 'scribble', 'scrub', 'seal', 'search', 'secure', 'see', 'seek', 'select', 'sell', 'send', 'sense', 'separate', 'serve', 'service', 'set', 'settle', 'sew', 'shade', 'shake', 'shape', 'share', 'shave', 'shear', 'shed', 'shelter', 'shine', 'shiver', 'shock', 'shoe', 'shoot', 'shop', 'show', 'shrink', 'shrug', 'shut', 'sigh', 'sign', 'signal', 'simplify', 'sin', 'sing', 'sink', 'sip', 'sit', 'sketch', 'ski', 'skip', 'slap', 'slay', 'sleep', 'slide', 'sling', 'slink', 'slip', 'slit', 'slow', 'smash', 'smell', 'smile', 'smite', 'smoke', 'snatch', 'sneak', 'sneeze', 'sniff', 'snore', 'snow', 'soak', 'solve', 'soothe', 'soothsay', 'sort', 'sound', 'sow', 'spare', 'spark', 'sparkle', 'speak', 'specify', 'speed', 'spell', 'spend', 'spill', 'spin', 'spit', 'split', 'spoil', 'spot', 'spray', 'spread', 'spring', 'sprout', 'squash', 'squeak', 'squeal', 'squeeze', 'stain', 'stamp', 'stand', 'stare', 'start', 'stay', 'steal', 'steer', 'step', 'stick', 'stimulate', 'sting', 'stink', 'stir', 'stitch', 'stop', 'store', 'strap', 'streamline', 'strengthen', 'stretch', 'stride', 'strike', 'string', 'strip', 'strive', 'stroke', 'structure', 'study', 'stuff', 'sublet', 'subtract', 'succeed', 'suck', 'suffer', 'suggest', 'suit', 'summarize', 'supervise', 'supply', 'support', 'suppose', 'surprise', 'surround', 'suspect', 'suspend', 'swear', 'sweat', 'sweep', 'swell', 'swim', 'swing', 'switch', 'symbolize', 'synthesize', 'systemize', 'tabulate', 'take', 'talk', 'tame', 'tap', 'target', 'taste', 'teach', 'tear', 'tease', 'telephone', 'tell', 'tempt', 'terrify', 'test', 'thank', 'thaw', 'think', 'thrive', 'throw', 'thrust', 'tick', 'tickle', 'tie', 'time', 'tip', 'tire', 'touch', 'tour', 'tow', 'trace', 'trade', 'train', 'transcribe', 'transfer', 'transform', 'translate', 'transport', 'trap', 'travel', 'tread', 'treat', 'tremble', 'trick', 'trip', 'trot', 'trouble', 'troubleshoot', 'trust', 'try', 'tug', 'tumble', 'turn', 'tutor', 'twist', 'type', 'undergo', 'understand', 'undertake', 'undress', 'unfasten', 'unify', 'unite', 'unlock', 'unpack', 'untidy', 'update', 'upgrade', 'uphold', 'upset', 'use', 'utilize', 'vanish', 'verbalize', 'verify', 'vex', 'visit', 'wail', 'wait', 'wake', 'walk', 'wander', 'want', 'warm', 'warn', 'wash', 'waste', 'watch', 'water', 'wave', 'wear', 'weave', 'wed', 'weep', 'weigh', 'welcome', 'wend', 'wet', 'whine', 'whip', 'whirl', 'whisper', 'whistle', 'win', 'wind', 'wink', 'wipe', 'wish', 'withdraw', 'withhold', 'withstand', 'wobble', 'wonder', 'work', 'worry', 'wrap', 'wreck', 'wrestle', 'wriggle', 'wring', 'write', 'x-ray', 'yawn', 'yell', 'zip', 'zoom'] adjectives = ['abandoned', 'able', 'absolute', 'adorable', 'adventurous', 'academic', 'acceptable', 'acclaimed', 'accomplished', 'accurate', 'aching', 'acidic', 'acrobatic', 'active', 'actual', 'adept', 'admirable', 'admired', 'adolescent', 'adorable', 'adored', 'advanced', 'afraid', 'affectionate', 'aged', 'aggravating', 'aggressive', 'agile', 'agitated', 'agonizing', 'agreeable', 'ajar', 'alarmed', 'alarming', 'alert', 'alienated', 'alive', 'all', 'altruistic', 'amazing', 'ambitious', 'ample', 'amused', 'amusing', 'anchored', 'ancient', 'angelic', 'angry', 'anguished', 'animated', 'annual', 'another', 'antique', 'anxious', 'any', 'apprehensive', 'appropriate', 'apt', 'arctic', 'arid', 'aromatic', 'artistic', 'ashamed', 'assured', 'astonishing', 'athletic', 'attached', 'attentive', 'attractive', 'austere', 'authentic', 'authorized', 'automatic', 'avaricious', 'average', 'aware', 'awesome', 'awful', 'awkward', 'babyish', 'bad', 'back', 'baggy', 'bare', 'barren', 'basic', 'beautiful', 'belated', 'beloved', 'beneficial', 'better', 'best', 'bewitched', 'big', 'big-hearted', 'biodegradable', 'bite-sized', 'bitter', 'black', 'black-and-white', 'bland', 'blank', 'blaring', 'bleak', 'blind', 'blissful', 'blond', 'blue', 'blushing', 'bogus', 'boiling', 'bold', 'bony', 'boring', 'bossy', 'both', 'bouncy', 'bountiful', 'bowed', 'brave', 'breakable', 'brief', 'bright', 'brilliant', 'brisk', 'broken', 'bronze', 'brown', 'bruised', 'bubbly', 'bulky', 'bumpy', 'buoyant', 'burdensome', 'burly', 'bustling', 'busy', 'buttery', 'buzzing', 'calculating', 'calm', 'candid', 'canine', 'capital', 'carefree', 'careful', 'careless', 'caring', 'cautious', 'cavernous', 'celebrated', 'charming', 'cheap', 'cheerful', 'cheery', 'chief', 'chilly', 'chubby', 'circular', 'classic', 'clean', 'clear', 'clear-cut', 'clever', 'close', 'closed', 'cloudy', 'clueless', 'clumsy', 'cluttered', 'coarse', 'cold', 'colorful', 'colorless', 'colossal', 'comfortable', 'common', 'compassionate', 'competent', 'complete', 'complex', 'complicated', 'composed', 'concerned', 'concrete', 'confused', 'conscious', 'considerate', 'constant', 'content', 'conventional', 'cooked', 'cool', 'cooperative', 'coordinated', 'corny', 'corrupt', 'costly', 'courageous', 'courteous', 'crafty', 'crazy', 'creamy', 'creative', 'creepy', 'criminal', 'crisp', 'critical', 'crooked', 'crowded', 'cruel', 'crushing', 'cuddly', 'cultivated', 'cultured', 'cumbersome', 'curly', 'curvy', 'cute', 'cylindrical', 'damaged', 'damp', 'dangerous', 'dapper', 'daring', 'darling', 'dark', 'dazzling', 'dead', 'deadly', 'deafening', 'dear', 'dearest', 'decent', 'decimal', 'decisive', 'deep', 'defenseless', 'defensive', 'defiant', 'deficient', 'definite', 'definitive', 'delayed', 'delectable', 'delicious', 'delightful', 'delirious', 'demanding', 'dense', 'dental', 'dependable', 'dependent', 'descriptive', 'deserted', 'detailed', 'determined', 'devoted', 'different', 'difficult', 'digital', 'diligent', 'dim', 'dimpled', 'dimwitted', 'direct', 'disastrous', 'discrete', 'disfigured', 'disgusting', 'disloyal', 'dismal', 'distant', 'downright', 'dreary', 'dirty', 'disguised', 'dishonest', 'dismal', 'distant', 'distinct', 'distorted', 'dizzy', 'dopey', 'doting', 'double', 'downright', 'drab', 'drafty', 'dramatic', 'dreary', 'droopy', 'dry', 'dual', 'dull', 'dutiful', 'each', 'eager', 'earnest', 'early', 'easy', 'easy-going', 'ecstatic', 'edible', 'educated', 'elaborate', 'elastic', 'elated', 'elderly', 'electric', 'elegant', 'elementary', 'elliptical', 'embarrassed', 'embellished', 'eminent', 'emotional', 'empty', 'enchanted', 'enchanting', 'energetic', 'enlightened', 'enormous', 'enraged', 'entire', 'envious', 'equal', 'equatorial', 'essential', 'esteemed', 'ethical', 'euphoric', 'even', 'evergreen', 'everlasting', 'every', 'evil', 'exalted', 'excellent', 'exemplary', 'exhausted', 'excitable', 'excited', 'exciting', 'exotic', 'expensive', 'experienced', 'expert', 'extraneous', 'extroverted', 'extra-large', 'extra-small', 'fabulous', 'failing', 'faint', 'fair', 'faithful', 'fake', 'false', 'familiar', 'famous', 'fancy', 'fantastic', 'far', 'faraway', 'far-flung', 'far-off', 'fast', 'fat', 'fatal', 'fatherly', 'favorable', 'favorite', 'fearful', 'fearless', 'feisty', 'feline', 'female', 'feminine', 'few', 'fickle', 'filthy', 'fine', 'finished', 'firm', 'first', 'firsthand', 'fitting', 'fixed', 'flaky', 'flamboyant', 'flashy', 'flat', 'flawed', 'flawless', 'flickering', 'flimsy', 'flippant', 'flowery', 'fluffy', 'fluid', 'flustered', 'focused', 'fond', 'foolhardy', 'foolish', 'forceful', 'forked', 'formal', 'forsaken', 'forthright', 'fortunate', 'fragrant', 'frail', 'frank', 'frayed', 'free', 'French', 'fresh', 'frequent', 'friendly', 'frightened', 'frightening', 'frigid', 'frilly', 'frizzy', 'frivolous', 'front', 'frosty', 'frozen', 'frugal', 'fruitful', 'full', 'fumbling', 'functional', 'funny', 'fussy', 'fuzzy', 'gargantuan', 'gaseous', 'general', 'generous', 'gentle', 'genuine', 'giant', 'giddy', 'gigantic', 'gifted', 'giving', 'glamorous', 'glaring', 'glass', 'gleaming', 'gleeful', 'glistening', 'glittering', 'gloomy', 'glorious', 'glossy', 'glum', 'golden', 'good', 'good-natured', 'gorgeous', 'graceful', 'gracious', 'grand', 'grandiose', 'granular', 'grateful', 'grave', 'gray', 'great', 'greedy', 'green', 'gregarious', 'grim', 'grimy', 'gripping', 'grizzled', 'gross', 'grotesque', 'grouchy', 'grounded', 'growing', 'growling', 'grown', 'grubby', 'gruesome', 'grumpy', 'guilty', 'gullible', 'gummy', 'hairy', 'half', 'handmade', 'handsome', 'handy', 'happy', 'happy-go-lucky', 'hard', 'hard-to-find', 'harmful', 'harmless', 'harmonious', 'harsh', 'hasty', 'hateful', 'haunting', 'healthy', 'heartfelt', 'hearty', 'heavenly', 'heavy', 'hefty', 'helpful', 'helpless', 'hidden', 'hideous', 'high', 'high-level', 'hilarious', 'hoarse', 'hollow', 'homely', 'honest', 'honorable', 'honored', 'hopeful', 'horrible', 'hospitable', 'hot', 'huge', 'humble', 'humiliating', 'humming', 'humongous', 'hungry', 'hurtful', 'husky', 'icky', 'icy', 'ideal', 'idealistic', 'identical', 'idle', 'idiotic', 'idolized', 'ignorant', 'ill', 'illegal', 'ill-fated', 'ill-informed', 'illiterate', 'illustrious', 'imaginary', 'imaginative', 'immaculate', 'immaterial', 'immediate', 'immense', 'impassioned', 'impeccable', 'impartial', 'imperfect', 'imperturbable', 'impish', 'impolite', 'important', 'impossible', 'impractical', 'impressionable', 'impressive', 'improbable', 'impure', 'inborn', 'incomparable', 'incompatible', 'incomplete', 'inconsequential', 'incredible', 'indelible', 'inexperienced', 'indolent', 'infamous', 'infantile', 'infatuated', 'inferior', 'infinite', 'informal', 'innocent', 'insecure', 'insidious', 'insignificant', 'insistent', 'instructive', 'insubstantial', 'intelligent', 'intent', 'intentional', 'interesting', 'internal', 'international', 'intrepid', 'ironclad', 'irresponsible', 'irritating', 'itchy', 'jaded', 'jagged', 'jam-packed', 'jaunty', 'jealous', 'jittery', 'joint', 'jolly', 'jovial', 'joyful', 'joyous', 'jubilant', 'judicious', 'juicy', 'jumbo', 'junior', 'jumpy', 'juvenile', 'kaleidoscopic', 'keen', 'key', 'kind', 'kindhearted', 'kindly', 'klutzy', 'knobby', 'knotty', 'knowledgeable', 'knowing', 'known', 'kooky', 'kosher', 'lame', 'lanky', 'large', 'last', 'lasting', 'late', 'lavish', 'lawful', 'lazy', 'leading', 'lean', 'leafy', 'left', 'legal', 'legitimate', 'light', 'lighthearted', 'likable', 'likely', 'limited', 'limp', 'limping', 'linear', 'lined', 'liquid', 'little', 'live', 'lively', 'livid', 'loathsome', 'lone', 'lonely', 'long', 'long-term', 'loose', 'lopsided', 'lost', 'loud', 'lovable', 'lovely', 'loving', 'low', 'loyal', 'lucky', 'lumbering', 'luminous', 'lumpy', 'lustrous', 'luxurious', 'mad', 'made-up', 'magnificent', 'majestic', 'major', 'male', 'mammoth', 'married', 'marvelous', 'masculine', 'massive', 'mature', 'meager', 'mealy', 'mean', 'measly', 'meaty', 'medical', 'mediocre', 'medium', 'meek', 'mellow', 'melodic', 'memorable', 'menacing', 'merry', 'messy', 'metallic', 'mild', 'milky', 'mindless', 'miniature', 'minor', 'minty', 'miserable', 'miserly', 'misguided', 'misty', 'mixed', 'modern', 'modest', 'moist', 'monstrous', 'monthly', 'monumental', 'moral', 'mortified', 'motherly', 'motionless', 'mountainous', 'muddy', 'muffled', 'multicolored', 'mundane', 'murky', 'mushy', 'musty', 'muted', 'mysterious', 'naive', 'narrow', 'nasty', 'natural', 'naughty', 'nautical', 'near', 'neat', 'necessary', 'needy', 'negative', 'neglected', 'negligible', 'neighboring', 'nervous', 'new', 'next', 'nice', 'nifty', 'nimble', 'nippy', 'nocturnal', 'noisy', 'nonstop', 'normal', 'notable', 'noted', 'noteworthy', 'novel', 'noxious', 'numb', 'nutritious', 'nutty', 'obedient', 'obese', 'oblong', 'oily', 'oblong', 'obvious', 'occasional', 'odd', 'oddball', 'offbeat', 'offensive', 'official', 'old', 'old-fashioned', 'only', 'open', 'optimal', 'optimistic', 'opulent', 'orange', 'orderly', 'organic', 'ornate', 'ornery', 'ordinary', 'original', 'other', 'our', 'outlying', 'outgoing', 'outlandish', 'outrageous', 'outstanding', 'oval', 'overcooked', 'overdue', 'overjoyed', 'overlooked', 'palatable', 'pale', 'paltry', 'parallel', 'parched', 'partial', 'passionate', 'past', 'pastel', 'peaceful', 'peppery', 'perfect', 'perfumed', 'periodic', 'perky', 'personal', 'pertinent', 'pesky', 'pessimistic', 'petty', 'phony', 'physical', 'piercing', 'pink', 'pitiful', 'plain', 'plaintive', 'plastic', 'playful', 'pleasant', 'pleased', 'pleasing', 'plump', 'plush', 'polished', 'polite', 'political', 'pointed', 'pointless', 'poised', 'poor', 'popular', 'portly', 'posh', 'positive', 'possible', 'potable', 'powerful', 'powerless', 'practical', 'precious', 'present', 'prestigious', 'pretty', 'precious', 'previous', 'pricey', 'prickly', 'primary', 'prime', 'pristine', 'private', 'prize', 'probable', 'productive', 'profitable', 'profuse', 'proper', 'proud', 'prudent', 'punctual', 'pungent', 'puny', 'pure', 'purple', 'pushy', 'putrid', 'puzzled', 'puzzling', 'quaint', 'qualified', 'quarrelsome', 'quarterly', 'queasy', 'querulous', 'questionable', 'quick', 'quick-witted', 'quiet', 'quintessential', 'quirky', 'quixotic', 'quizzical', 'radiant', 'ragged', 'rapid', 'rare', 'rash', 'raw', 'recent', 'reckless', 'rectangular', 'ready', 'real', 'realistic', 'reasonable', 'red', 'reflecting', 'regal', 'regular', 'reliable', 'relieved', 'remarkable', 'remorseful', 'remote', 'repentant', 'required', 'respectful', 'responsible', 'repulsive', 'revolving', 'rewarding', 'rich', 'rigid', 'right', 'ringed', 'ripe', 'roasted', 'robust', 'rosy', 'rotating', 'rotten', 'rough', 'round', 'rowdy', 'royal', 'rubbery', 'rundown', 'ruddy', 'rude', 'runny', 'rural', 'rusty', 'sad', 'safe', 'salty', 'same', 'sandy', 'sane', 'sarcastic', 'sardonic', 'satisfied', 'scaly', 'scarce', 'scared', 'scary', 'scented', 'scholarly', 'scientific', 'scornful', 'scratchy', 'scrawny', 'second', 'secondary', 'second-hand', 'secret', 'self-assured', 'self-reliant', 'selfish', 'sentimental', 'separate', 'serene', 'serious', 'serpentine', 'several', 'severe', 'shabby', 'shadowy', 'shady', 'shallow', 'shameful', 'shameless', 'sharp', 'shimmering', 'shiny', 'shocked', 'shocking', 'shoddy', 'short', 'short-term', 'showy', 'shrill', 'shy', 'sick', 'silent', 'silky', 'silly', 'silver', 'similar', 'simple', 'simplistic', 'sinful', 'single', 'sizzling', 'skeletal', 'skinny', 'sleepy', 'slight', 'slim', 'slimy', 'slippery', 'slow', 'slushy', 'small', 'smart', 'smoggy', 'smooth', 'smug', 'snappy', 'snarling', 'sneaky', 'sniveling', 'snoopy', 'sociable', 'soft', 'soggy', 'solid', 'somber', 'some', 'spherical', 'sophisticated', 'sore', 'sorrowful', 'soulful', 'soupy', 'sour', 'Spanish', 'sparkling', 'sparse', 'specific', 'spectacular', 'speedy', 'spicy', 'spiffy', 'spirited', 'spiteful', 'splendid', 'spotless', 'spotted', 'spry', 'square', 'squeaky', 'squiggly', 'stable', 'staid', 'stained', 'stale', 'standard', 'starchy', 'stark', 'starry', 'steep', 'sticky', 'stiff', 'stimulating', 'stingy', 'stormy', 'straight', 'strange', 'steel', 'strict', 'strident', 'striking', 'striped', 'strong', 'studious', 'stunning', 'stupendous', 'stupid', 'sturdy', 'stylish', 'subdued', 'submissive', 'substantial', 'subtle', 'suburban', 'sudden', 'sugary', 'sunny', 'super', 'superb', 'superficial', 'superior', 'supportive', 'sure-footed', 'surprised', 'suspicious', 'svelte', 'sweaty', 'sweet', 'sweltering', 'swift', 'sympathetic', 'tall', 'talkative', 'tame', 'tan', 'tangible', 'tart', 'tasty', 'tattered', 'taut', 'tedious', 'teeming', 'tempting', 'tender', 'tense', 'tepid', 'terrible', 'terrific', 'testy', 'thankful', 'that', 'these', 'thick', 'thin', 'third', 'thirsty', 'this', 'thorough', 'thorny', 'those', 'thoughtful', 'threadbare', 'thrifty', 'thunderous', 'tidy', 'tight', 'timely', 'tinted', 'tiny', 'tired', 'torn', 'total', 'tough', 'traumatic', 'treasured', 'tremendous', 'tragic', 'trained', 'tremendous', 'triangular', 'tricky', 'trifling', 'trim', 'trivial', 'troubled', 'true', 'trusting', 'trustworthy', 'trusty', 'truthful', 'tubby', 'turbulent', 'twin', 'ugly', 'ultimate', 'unacceptable', 'unaware', 'uncomfortable', 'uncommon', 'unconscious', 'understated', 'unequaled', 'uneven', 'unfinished', 'unfit', 'unfolded', 'unfortunate', 'unhappy', 'unhealthy', 'uniform', 'unimportant', 'unique', 'united', 'unkempt', 'unknown', 'unlawful', 'unlined', 'unlucky', 'unnatural', 'unpleasant', 'unrealistic', 'unripe', 'unruly', 'unselfish', 'unsightly', 'unsteady', 'unsung', 'untidy', 'untimely', 'untried', 'untrue', 'unused', 'unusual', 'unwelcome', 'unwieldy', 'unwilling', 'unwitting', 'unwritten', 'upbeat', 'upright', 'upset', 'urban', 'usable', 'used', 'useful', 'useless', 'utilized', 'utter', 'vacant', 'vague', 'vain', 'valid', 'valuable', 'vapid', 'variable', 'vast', 'velvety', 'venerated', 'vengeful', 'verifiable', 'vibrant', 'vicious', 'victorious', 'vigilant', 'vigorous', 'villainous', 'violet', 'violent', 'virtual', 'virtuous', 'visible', 'vital', 'vivacious', 'vivid', 'voluminous', 'wan', 'warlike', 'warm', 'warmhearted', 'warped', 'wary', 'wasteful', 'watchful', 'waterlogged', 'watery', 'wavy', 'wealthy', 'weak', 'weary', 'webbed', 'wee', 'weekly', 'weepy', 'weighty', 'weird', 'welcome', 'well-documented', 'well-groomed', 'well-informed', 'well-lit', 'well-made', 'well-off', 'well-to-do', 'well-worn', 'wet', 'which', 'whimsical', 'whirlwind', 'whispered', 'white', 'whole', 'whopping', 'wicked', 'wide', 'wide-eyed', 'wiggly', 'wild', 'willing', 'wilted', 'winding', 'windy', 'winged', 'wiry', 'wise', 'witty', 'wobbly', 'woeful', 'wonderful', 'wooden', 'woozy', 'wordy', 'worldly', 'worn', 'worried', 'worrisome', 'worse', 'worst', 'worthless', 'worthwhile', 'worthy', 'wrathful', 'wretched', 'writhing', 'wrong', 'wry', 'yawning', 'yearly', 'yellow', 'yellowish', 'young', 'youthful', 'yummy', 'zany', 'zealous', 'zesty', 'zigzag'] -postform = random.randrange(1, 4) -gender = random.randrange(1, 4) -if gender == 1: - gender = 'lgf' -elif gender == 2: - gender = 'lbf' -elif gender == 3: - gender = 'elf' +postform = random.choice(( + '{adjective} {gender} who {verb}', + '{adjective} {gender}', + '{gender} who {verb}', +)) +gender = random.choice(('lgf', 'lbf', 'elf')) verb = random.choice(verbs) -if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: - verb = verb[:-2] -if verb[-1] in ['a', 'i', 'o', 'u']: +if verb[-2:] == 'ed' and verb[-3] not in {'a', 'e', 'i', 'o', 'u'}: + verb = verb[:-2] +if verb[-1] in {'a', 'i', 'o', 'u'}: verb = verb + 'es' -elif verb[-1] in ['s', 'x'] or verb[-2] in ['s', 'x'] or verb[-2:] == 'ch': +elif verb[-1] in {'s', 'x'} or verb[-2] in {'s', 'x'} or verb[-2:] == 'ch': verb = verb + 'es' -elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: +elif verb[-1] == 'y' and verb[-2] not in {'a', 'e', 'i', 'o', 'u'}: verb = verb[:-1] + 'ies' else: verb = verb + 's' adjective = random.choice(adjectives) -if postform == 1: - content = adjective + ' ' + gender + ' who ' + verb -elif postform == 2: - content = adjective + ' ' + gender -elif postform == 3: - content = gender + ' who ' + verb +content = postform.format(adjective=adjective, gender=gender, verb=verb) print(content) -mastodon.status_post(content, visibility='unlisted') \ No newline at end of file +mastodon.status_post(content, visibility='unlisted') -- 2.39.2 From 99969f0503735c57e46cd7d7b79e88410e0dc22e Mon Sep 17 00:00:00 2001 From: Kay Faraday Date: Thu, 12 Jan 2023 06:00:25 +0000 Subject: [PATCH 06/12] refactor word lists to separate files this lets us see diffs of the ljfbot.py file in the forgejo web UI --- adjectives.txt | 1347 ++++++++++++++++++++++++++++++++++++++++++++++++ lgfbot.py | 8 +- verbs.txt | 1040 +++++++++++++++++++++++++++++++++++++ 3 files changed, 2393 insertions(+), 2 deletions(-) create mode 100644 adjectives.txt create mode 100644 verbs.txt diff --git a/adjectives.txt b/adjectives.txt new file mode 100644 index 0000000..a7ecef9 --- /dev/null +++ b/adjectives.txt @@ -0,0 +1,1347 @@ +abandoned +able +absolute +adorable +adventurous +academic +acceptable +acclaimed +accomplished +accurate +aching +acidic +acrobatic +active +actual +adept +admirable +admired +adolescent +adorable +adored +advanced +afraid +affectionate +aged +aggravating +aggressive +agile +agitated +agonizing +agreeable +ajar +alarmed +alarming +alert +alienated +alive +all +altruistic +amazing +ambitious +ample +amused +amusing +anchored +ancient +angelic +angry +anguished +animated +annual +another +antique +anxious +any +apprehensive +appropriate +apt +arctic +arid +aromatic +artistic +ashamed +assured +astonishing +athletic +attached +attentive +attractive +austere +authentic +authorized +automatic +avaricious +average +aware +awesome +awful +awkward +babyish +bad +back +baggy +bare +barren +basic +beautiful +belated +beloved +beneficial +better +best +bewitched +big +big-hearted +biodegradable +bite-sized +bitter +black +black-and-white +bland +blank +blaring +bleak +blind +blissful +blond +blue +blushing +bogus +boiling +bold +bony +boring +bossy +both +bouncy +bountiful +bowed +brave +breakable +brief +bright +brilliant +brisk +broken +bronze +brown +bruised +bubbly +bulky +bumpy +buoyant +burdensome +burly +bustling +busy +buttery +buzzing +calculating +calm +candid +canine +capital +carefree +careful +careless +caring +cautious +cavernous +celebrated +charming +cheap +cheerful +cheery +chief +chilly +chubby +circular +classic +clean +clear +clear-cut +clever +close +closed +cloudy +clueless +clumsy +cluttered +coarse +cold +colorful +colorless +colossal +comfortable +common +compassionate +competent +complete +complex +complicated +composed +concerned +concrete +confused +conscious +considerate +constant +content +conventional +cooked +cool +cooperative +coordinated +corny +corrupt +costly +courageous +courteous +crafty +crazy +creamy +creative +creepy +criminal +crisp +critical +crooked +crowded +cruel +crushing +cuddly +cultivated +cultured +cumbersome +curly +curvy +cute +cylindrical +damaged +damp +dangerous +dapper +daring +darling +dark +dazzling +dead +deadly +deafening +dear +dearest +decent +decimal +decisive +deep +defenseless +defensive +defiant +deficient +definite +definitive +delayed +delectable +delicious +delightful +delirious +demanding +dense +dental +dependable +dependent +descriptive +deserted +detailed +determined +devoted +different +difficult +digital +diligent +dim +dimpled +dimwitted +direct +disastrous +discrete +disfigured +disgusting +disloyal +dismal +distant +downright +dreary +dirty +disguised +dishonest +dismal +distant +distinct +distorted +dizzy +dopey +doting +double +downright +drab +drafty +dramatic +dreary +droopy +dry +dual +dull +dutiful +each +eager +earnest +early +easy +easy-going +ecstatic +edible +educated +elaborate +elastic +elated +elderly +electric +elegant +elementary +elliptical +embarrassed +embellished +eminent +emotional +empty +enchanted +enchanting +energetic +enlightened +enormous +enraged +entire +envious +equal +equatorial +essential +esteemed +ethical +euphoric +even +evergreen +everlasting +every +evil +exalted +excellent +exemplary +exhausted +excitable +excited +exciting +exotic +expensive +experienced +expert +extraneous +extroverted +extra-large +extra-small +fabulous +failing +faint +fair +faithful +fake +false +familiar +famous +fancy +fantastic +far +faraway +far-flung +far-off +fast +fat +fatal +fatherly +favorable +favorite +fearful +fearless +feisty +feline +female +feminine +few +fickle +filthy +fine +finished +firm +first +firsthand +fitting +fixed +flaky +flamboyant +flashy +flat +flawed +flawless +flickering +flimsy +flippant +flowery +fluffy +fluid +flustered +focused +fond +foolhardy +foolish +forceful +forked +formal +forsaken +forthright +fortunate +fragrant +frail +frank +frayed +free +French +fresh +frequent +friendly +frightened +frightening +frigid +frilly +frizzy +frivolous +front +frosty +frozen +frugal +fruitful +full +fumbling +functional +funny +fussy +fuzzy +gargantuan +gaseous +general +generous +gentle +genuine +giant +giddy +gigantic +gifted +giving +glamorous +glaring +glass +gleaming +gleeful +glistening +glittering +gloomy +glorious +glossy +glum +golden +good +good-natured +gorgeous +graceful +gracious +grand +grandiose +granular +grateful +grave +gray +great +greedy +green +gregarious +grim +grimy +gripping +grizzled +gross +grotesque +grouchy +grounded +growing +growling +grown +grubby +gruesome +grumpy +guilty +gullible +gummy +hairy +half +handmade +handsome +handy +happy +happy-go-lucky +hard +hard-to-find +harmful +harmless +harmonious +harsh +hasty +hateful +haunting +healthy +heartfelt +hearty +heavenly +heavy +hefty +helpful +helpless +hidden +hideous +high +high-level +hilarious +hoarse +hollow +homely +honest +honorable +honored +hopeful +horrible +hospitable +hot +huge +humble +humiliating +humming +humongous +hungry +hurtful +husky +icky +icy +ideal +idealistic +identical +idle +idiotic +idolized +ignorant +ill +illegal +ill-fated +ill-informed +illiterate +illustrious +imaginary +imaginative +immaculate +immaterial +immediate +immense +impassioned +impeccable +impartial +imperfect +imperturbable +impish +impolite +important +impossible +impractical +impressionable +impressive +improbable +impure +inborn +incomparable +incompatible +incomplete +inconsequential +incredible +indelible +inexperienced +indolent +infamous +infantile +infatuated +inferior +infinite +informal +innocent +insecure +insidious +insignificant +insistent +instructive +insubstantial +intelligent +intent +intentional +interesting +internal +international +intrepid +ironclad +irresponsible +irritating +itchy +jaded +jagged +jam-packed +jaunty +jealous +jittery +joint +jolly +jovial +joyful +joyous +jubilant +judicious +juicy +jumbo +junior +jumpy +juvenile +kaleidoscopic +keen +key +kind +kindhearted +kindly +klutzy +knobby +knotty +knowledgeable +knowing +known +kooky +kosher +lame +lanky +large +last +lasting +late +lavish +lawful +lazy +leading +lean +leafy +left +legal +legitimate +light +lighthearted +likable +likely +limited +limp +limping +linear +lined +liquid +little +live +lively +livid +loathsome +lone +lonely +long +long-term +loose +lopsided +lost +loud +lovable +lovely +loving +low +loyal +lucky +lumbering +luminous +lumpy +lustrous +luxurious +mad +made-up +magnificent +majestic +major +male +mammoth +married +marvelous +masculine +massive +mature +meager +mealy +mean +measly +meaty +medical +mediocre +medium +meek +mellow +melodic +memorable +menacing +merry +messy +metallic +mild +milky +mindless +miniature +minor +minty +miserable +miserly +misguided +misty +mixed +modern +modest +moist +monstrous +monthly +monumental +moral +mortified +motherly +motionless +mountainous +muddy +muffled +multicolored +mundane +murky +mushy +musty +muted +mysterious +naive +narrow +nasty +natural +naughty +nautical +near +neat +necessary +needy +negative +neglected +negligible +neighboring +nervous +new +next +nice +nifty +nimble +nippy +nocturnal +noisy +nonstop +normal +notable +noted +noteworthy +novel +noxious +numb +nutritious +nutty +obedient +obese +oblong +oily +oblong +obvious +occasional +odd +oddball +offbeat +offensive +official +old +old-fashioned +only +open +optimal +optimistic +opulent +orange +orderly +organic +ornate +ornery +ordinary +original +other +our +outlying +outgoing +outlandish +outrageous +outstanding +oval +overcooked +overdue +overjoyed +overlooked +palatable +pale +paltry +parallel +parched +partial +passionate +past +pastel +peaceful +peppery +perfect +perfumed +periodic +perky +personal +pertinent +pesky +pessimistic +petty +phony +physical +piercing +pink +pitiful +plain +plaintive +plastic +playful +pleasant +pleased +pleasing +plump +plush +polished +polite +political +pointed +pointless +poised +poor +popular +portly +posh +positive +possible +potable +powerful +powerless +practical +precious +present +prestigious +pretty +precious +previous +pricey +prickly +primary +prime +pristine +private +prize +probable +productive +profitable +profuse +proper +proud +prudent +punctual +pungent +puny +pure +purple +pushy +putrid +puzzled +puzzling +quaint +qualified +quarrelsome +quarterly +queasy +querulous +questionable +quick +quick-witted +quiet +quintessential +quirky +quixotic +quizzical +radiant +ragged +rapid +rare +rash +raw +recent +reckless +rectangular +ready +real +realistic +reasonable +red +reflecting +regal +regular +reliable +relieved +remarkable +remorseful +remote +repentant +required +respectful +responsible +repulsive +revolving +rewarding +rich +rigid +right +ringed +ripe +roasted +robust +rosy +rotating +rotten +rough +round +rowdy +royal +rubbery +rundown +ruddy +rude +runny +rural +rusty +sad +safe +salty +same +sandy +sane +sarcastic +sardonic +satisfied +scaly +scarce +scared +scary +scented +scholarly +scientific +scornful +scratchy +scrawny +second +secondary +second-hand +secret +self-assured +self-reliant +selfish +sentimental +separate +serene +serious +serpentine +several +severe +shabby +shadowy +shady +shallow +shameful +shameless +sharp +shimmering +shiny +shocked +shocking +shoddy +short +short-term +showy +shrill +shy +sick +silent +silky +silly +silver +similar +simple +simplistic +sinful +single +sizzling +skeletal +skinny +sleepy +slight +slim +slimy +slippery +slow +slushy +small +smart +smoggy +smooth +smug +snappy +snarling +sneaky +sniveling +snoopy +sociable +soft +soggy +solid +somber +some +spherical +sophisticated +sore +sorrowful +soulful +soupy +sour +Spanish +sparkling +sparse +specific +spectacular +speedy +spicy +spiffy +spirited +spiteful +splendid +spotless +spotted +spry +square +squeaky +squiggly +stable +staid +stained +stale +standard +starchy +stark +starry +steep +sticky +stiff +stimulating +stingy +stormy +straight +strange +steel +strict +strident +striking +striped +strong +studious +stunning +stupendous +stupid +sturdy +stylish +subdued +submissive +substantial +subtle +suburban +sudden +sugary +sunny +super +superb +superficial +superior +supportive +sure-footed +surprised +suspicious +svelte +sweaty +sweet +sweltering +swift +sympathetic +tall +talkative +tame +tan +tangible +tart +tasty +tattered +taut +tedious +teeming +tempting +tender +tense +tepid +terrible +terrific +testy +thankful +that +these +thick +thin +third +thirsty +this +thorough +thorny +those +thoughtful +threadbare +thrifty +thunderous +tidy +tight +timely +tinted +tiny +tired +torn +total +tough +traumatic +treasured +tremendous +tragic +trained +tremendous +triangular +tricky +trifling +trim +trivial +troubled +true +trusting +trustworthy +trusty +truthful +tubby +turbulent +twin +ugly +ultimate +unacceptable +unaware +uncomfortable +uncommon +unconscious +understated +unequaled +uneven +unfinished +unfit +unfolded +unfortunate +unhappy +unhealthy +uniform +unimportant +unique +united +unkempt +unknown +unlawful +unlined +unlucky +unnatural +unpleasant +unrealistic +unripe +unruly +unselfish +unsightly +unsteady +unsung +untidy +untimely +untried +untrue +unused +unusual +unwelcome +unwieldy +unwilling +unwitting +unwritten +upbeat +upright +upset +urban +usable +used +useful +useless +utilized +utter +vacant +vague +vain +valid +valuable +vapid +variable +vast +velvety +venerated +vengeful +verifiable +vibrant +vicious +victorious +vigilant +vigorous +villainous +violet +violent +virtual +virtuous +visible +vital +vivacious +vivid +voluminous +wan +warlike +warm +warmhearted +warped +wary +wasteful +watchful +waterlogged +watery +wavy +wealthy +weak +weary +webbed +wee +weekly +weepy +weighty +weird +welcome +well-documented +well-groomed +well-informed +well-lit +well-made +well-off +well-to-do +well-worn +wet +which +whimsical +whirlwind +whispered +white +whole +whopping +wicked +wide +wide-eyed +wiggly +wild +willing +wilted +winding +windy +winged +wiry +wise +witty +wobbly +woeful +wonderful +wooden +woozy +wordy +worldly +worn +worried +worrisome +worse +worst +worthless +worthwhile +worthy +wrathful +wretched +writhing +wrong +wry +yawning +yearly +yellow +yellowish +young +youthful +yummy +zany +zealous +zesty +zigzag diff --git a/lgfbot.py b/lgfbot.py index e6403e8..8630085 100755 --- a/lgfbot.py +++ b/lgfbot.py @@ -29,8 +29,12 @@ mastodon = Mastodon( access_token = './.lgfbot/lgf_user.secret' ) -verbs = ['abide', 'accelerate', 'accept', 'accomplish', 'achieve', 'acquire', 'acted', 'activate', 'adapt', 'add', 'address', 'administer', 'admire', 'admit', 'adopt', 'advise', 'afford', 'agree', 'alert', 'alight', 'allow', 'altered', 'amuse', 'analyze', 'announce', 'annoy', 'answer', 'anticipate', 'apologize', 'appear', 'applaud', 'applied', 'appoint', 'appraise', 'appreciate', 'approve', 'arbitrate', 'argue', 'arise', 'arrange', 'arrest', 'arrive', 'ascertain', 'ask', 'assemble', 'assess', 'assist', 'assure', 'attach', 'attack', 'attain', 'attempt', 'attend', 'attract', 'audited', 'avoid', 'awake', 'back', 'bake', 'balance', 'ban', 'bang', 'bare', 'bat', 'bathe', 'battle', 'beam', 'bear', 'beat', 'beg', 'begin', 'behave', 'behold', 'belong', 'bend', 'beset', 'bet', 'bid', 'bind', 'bite', 'bleach', 'bleed', 'bless', 'blind', 'blink', 'blot', 'blow', 'blush', 'boast', 'boil', 'bolt', 'bomb', 'book', 'bore', 'borrow', 'bounce', 'bow', 'box', 'brake', 'branch', 'break', 'breathe', 'breed', 'brief', 'bring', 'broadcast', 'bruise', 'brush', 'bubble', 'budget', 'build', 'bump', 'burn', 'burst', 'bury', 'bust', 'buy', 'buze', 'calculate', 'call', 'camp', 'care', 'carry', 'carve', 'cast', 'catalog', 'catch', 'cause', 'challenge', 'change', 'charge', 'chart', 'chase', 'cheat', 'check', 'cheer', 'chew', 'choke', 'choose', 'chop', 'claim', 'clap', 'clarify', 'classify', 'clean', 'clear', 'cling', 'clip', 'close', 'clothe', 'coach', 'coil', 'collect', 'color', 'comb', 'come', 'command', 'communicate', 'compare', 'compete', 'compile', 'complain', 'complete', 'compose', 'compute', 'conceive', 'concentrate', 'conceptualize', 'concern', 'conclude', 'conduct', 'confess', 'confront', 'confuse', 'connect', 'conserve', 'consider', 'consist', 'consolidate', 'construct', 'consult', 'contain', 'continue', 'contract', 'control', 'convert', 'coordinate', 'copy', 'correct', 'correlate', 'cost', 'cough', 'counsel', 'count', 'cover', 'crack', 'crash', 'crawl', 'create', 'creep', 'critique', 'cross', 'crush', 'cry', 'cure', 'curl', 'curve', 'cut', 'cycle', 'dam', 'damage', 'dance', 'dare', 'deal', 'decay', 'deceive', 'decide', 'decorate', 'define', 'delay', 'delegate', 'delight', 'deliver', 'demonstrate', 'depend', 'describe', 'desert', 'deserve', 'design', 'destroy', 'detail', 'detect', 'determine', 'develop', 'devise', 'diagnose', 'dig', 'direct', 'disagree', 'disappear', 'disapprove', 'disarm', 'discover', 'dislike', 'dispense', 'display', 'disprove', 'dissect', 'distribute', 'dive', 'divert', 'divide', 'do', 'double', 'doubt', 'draft', 'drag', 'drain', 'dramatize', 'draw', 'dream', 'dress', 'drink', 'drip', 'drive', 'drop', 'drown', 'drum', 'dry', 'dust', 'dwell', 'earn', 'eat', 'edited', 'educate', 'eliminate', 'embarrass', 'employ', 'empty', 'enacted', 'encourage', 'end', 'endure', 'enforce', 'engineer', 'enhance', 'enjoy', 'enlist', 'ensure', 'enter', 'entertain', 'escape', 'establish', 'estimate', 'evaluate', 'examine', 'exceed', 'excite', 'excuse', 'execute', 'exercise', 'exhibit', 'exist', 'expand', 'expect', 'expedite', 'experiment', 'explain', 'explode', 'express', 'extend', 'extract', 'face', 'facilitate', 'fade', 'fail', 'fancy', 'fasten', 'fax', 'fear', 'feed', 'feel', 'fence', 'fetch', 'fight', 'file', 'fill', 'film', 'finalize', 'finance', 'find', 'fire', 'fit', 'fix', 'flap', 'flash', 'flee', 'fling', 'float', 'flood', 'flow', 'flower', 'fly', 'fold', 'follow', 'fool', 'forbid', 'force', 'forecast', 'forego', 'foresee', 'foretell', 'forget', 'forgive', 'form', 'formulate', 'forsake', 'frame', 'freeze', 'frighten', 'fry', 'gather', 'gaze', 'generate', 'get', 'give', 'glow', 'glue', 'go', 'govern', 'grab', 'graduate', 'grate', 'grease', 'greet', 'grin', 'grind', 'grip', 'groan', 'grow', 'guarantee', 'guard', 'guess', 'guide', 'hammer', 'hand', 'handle', 'handwrite', 'hang', 'happen', 'harass', 'harm', 'hate', 'haunt', 'head', 'heal', 'heap', 'hear', 'heat', 'help', 'hide', 'hit', 'hold', 'hook', 'hop', 'hope', 'hover', 'hug', 'hum', 'hunt', 'hurry', 'hurt', 'hypothesize', 'identify', 'ignore', 'illustrate', 'imagine', 'implement', 'impress', 'improve', 'improvise', 'include', 'increase', 'induce', 'influence', 'inform', 'initiate', 'inject', 'injure', 'inlay', 'innovate', 'input', 'inspect', 'inspire', 'install', 'institute', 'instruct', 'insure', 'integrate', 'intend', 'intensify', 'interest', 'interfere', 'interlay', 'interpret', 'interrupt', 'interview', 'introduce', 'invent', 'inventory', 'investigate', 'invite', 'irritate', 'itch', 'jail', 'jam', 'jog', 'join', 'joke', 'judge', 'juggle', 'jump', 'justify', 'keep', 'kept', 'kick', 'kill', 'kiss', 'kneel', 'knit', 'knock', 'knot', 'know', 'label', 'land', 'last', 'laugh', 'launch', 'lay', 'lead', 'lean', 'leap', 'learn', 'leave', 'lecture', 'led', 'lend', 'let', 'level', 'license', 'lick', 'lie', 'lifted', 'light', 'lighten', 'like', 'list', 'listen', 'live', 'load', 'locate', 'lock', 'log', 'long', 'look', 'lose', 'love', 'maintain', 'make', 'man', 'manage', 'manipulate', 'manufacture', 'map', 'march', 'mark', 'market', 'marry', 'match', 'mate', 'matter', 'mean', 'measure', 'meddle', 'mediate', 'meet', 'melt', 'melt', 'memorize', 'mend', 'mentor', 'milk', 'mine', 'mislead', 'miss', 'misspell', 'mistake', 'misunderstand', 'mix', 'moan', 'model', 'modify', 'monitor', 'moor', 'motivate', 'mourn', 'move', 'mow', 'muddle', 'mug', 'multiply', 'murder', 'nail', 'name', 'navigate', 'need', 'negotiate', 'nest', 'nod', 'nominate', 'normalize', 'note', 'notice', 'number', 'obey', 'object', 'observe', 'obtain', 'occur', 'offend', 'offer', 'officiate', 'open', 'operate', 'order', 'organize', 'oriented', 'originate', 'overcome', 'overdo', 'overdraw', 'overflow', 'overhear', 'overtake', 'overthrow', 'owe', 'own', 'pack', 'paddle', 'paint', 'park', 'part', 'participate', 'pass', 'paste', 'pat', 'pause', 'pay', 'peck', 'pedal', 'peel', 'peep', 'perceive', 'perfect', 'perform', 'permit', 'persuade', 'phone', 'photograph', 'pick', 'pilot', 'pinch', 'pine', 'pinpoint', 'pioneer', 'place', 'plan', 'plant', 'play', 'plead', 'please', 'plug', 'point', 'poke', 'polish', 'pop', 'possess', 'post', 'pour', 'practice', 'praised', 'pray', 'preach', 'precede', 'predict', 'prefer', 'prepare', 'prescribe', 'present', 'preserve', 'preset', 'preside', 'press', 'pretend', 'prevent', 'prick', 'print', 'process', 'procure', 'produce', 'profess', 'program', 'progress', 'project', 'promise', 'promote', 'proofread', 'propose', 'protect', 'prove', 'provide', 'publicize', 'pull', 'pump', 'punch', 'puncture', 'punish', 'purchase', 'push', 'put', 'qualify', 'question', 'queue', 'quit', 'race', 'radiate', 'rain', 'raise', 'rank', 'rate', 'reach', 'read', 'realign', 'realize', 'reason', 'receive', 'recognize', 'recommend', 'reconcile', 'record', 'recruit', 'reduce', 'refer', 'reflect', 'refuse', 'regret', 'regulate', 'rehabilitate', 'reign', 'reinforce', 'reject', 'rejoice', 'relate', 'relax', 'release', 'rely', 'remain', 'remember', 'remind', 'remove', 'render', 'reorganize', 'repair', 'repeat', 'replace', 'reply', 'report', 'represent', 'reproduce', 'request', 'rescue', 'research', 'resolve', 'respond', 'restored', 'restructure', 'retire', 'retrieve', 'return', 'review', 'revise', 'rhyme', 'rid', 'ride', 'ring', 'rinse', 'rise', 'risk', 'rob', 'rock', 'roll', 'rot', 'rub', 'ruin', 'rule', 'run', 'rush', 'sack', 'sail', 'satisfy', 'save', 'saw', 'say', 'scare', 'scatter', 'schedule', 'scold', 'scorch', 'scrape', 'scratch', 'scream', 'screw', 'scribble', 'scrub', 'seal', 'search', 'secure', 'see', 'seek', 'select', 'sell', 'send', 'sense', 'separate', 'serve', 'service', 'set', 'settle', 'sew', 'shade', 'shake', 'shape', 'share', 'shave', 'shear', 'shed', 'shelter', 'shine', 'shiver', 'shock', 'shoe', 'shoot', 'shop', 'show', 'shrink', 'shrug', 'shut', 'sigh', 'sign', 'signal', 'simplify', 'sin', 'sing', 'sink', 'sip', 'sit', 'sketch', 'ski', 'skip', 'slap', 'slay', 'sleep', 'slide', 'sling', 'slink', 'slip', 'slit', 'slow', 'smash', 'smell', 'smile', 'smite', 'smoke', 'snatch', 'sneak', 'sneeze', 'sniff', 'snore', 'snow', 'soak', 'solve', 'soothe', 'soothsay', 'sort', 'sound', 'sow', 'spare', 'spark', 'sparkle', 'speak', 'specify', 'speed', 'spell', 'spend', 'spill', 'spin', 'spit', 'split', 'spoil', 'spot', 'spray', 'spread', 'spring', 'sprout', 'squash', 'squeak', 'squeal', 'squeeze', 'stain', 'stamp', 'stand', 'stare', 'start', 'stay', 'steal', 'steer', 'step', 'stick', 'stimulate', 'sting', 'stink', 'stir', 'stitch', 'stop', 'store', 'strap', 'streamline', 'strengthen', 'stretch', 'stride', 'strike', 'string', 'strip', 'strive', 'stroke', 'structure', 'study', 'stuff', 'sublet', 'subtract', 'succeed', 'suck', 'suffer', 'suggest', 'suit', 'summarize', 'supervise', 'supply', 'support', 'suppose', 'surprise', 'surround', 'suspect', 'suspend', 'swear', 'sweat', 'sweep', 'swell', 'swim', 'swing', 'switch', 'symbolize', 'synthesize', 'systemize', 'tabulate', 'take', 'talk', 'tame', 'tap', 'target', 'taste', 'teach', 'tear', 'tease', 'telephone', 'tell', 'tempt', 'terrify', 'test', 'thank', 'thaw', 'think', 'thrive', 'throw', 'thrust', 'tick', 'tickle', 'tie', 'time', 'tip', 'tire', 'touch', 'tour', 'tow', 'trace', 'trade', 'train', 'transcribe', 'transfer', 'transform', 'translate', 'transport', 'trap', 'travel', 'tread', 'treat', 'tremble', 'trick', 'trip', 'trot', 'trouble', 'troubleshoot', 'trust', 'try', 'tug', 'tumble', 'turn', 'tutor', 'twist', 'type', 'undergo', 'understand', 'undertake', 'undress', 'unfasten', 'unify', 'unite', 'unlock', 'unpack', 'untidy', 'update', 'upgrade', 'uphold', 'upset', 'use', 'utilize', 'vanish', 'verbalize', 'verify', 'vex', 'visit', 'wail', 'wait', 'wake', 'walk', 'wander', 'want', 'warm', 'warn', 'wash', 'waste', 'watch', 'water', 'wave', 'wear', 'weave', 'wed', 'weep', 'weigh', 'welcome', 'wend', 'wet', 'whine', 'whip', 'whirl', 'whisper', 'whistle', 'win', 'wind', 'wink', 'wipe', 'wish', 'withdraw', 'withhold', 'withstand', 'wobble', 'wonder', 'work', 'worry', 'wrap', 'wreck', 'wrestle', 'wriggle', 'wring', 'write', 'x-ray', 'yawn', 'yell', 'zip', 'zoom'] -adjectives = ['abandoned', 'able', 'absolute', 'adorable', 'adventurous', 'academic', 'acceptable', 'acclaimed', 'accomplished', 'accurate', 'aching', 'acidic', 'acrobatic', 'active', 'actual', 'adept', 'admirable', 'admired', 'adolescent', 'adorable', 'adored', 'advanced', 'afraid', 'affectionate', 'aged', 'aggravating', 'aggressive', 'agile', 'agitated', 'agonizing', 'agreeable', 'ajar', 'alarmed', 'alarming', 'alert', 'alienated', 'alive', 'all', 'altruistic', 'amazing', 'ambitious', 'ample', 'amused', 'amusing', 'anchored', 'ancient', 'angelic', 'angry', 'anguished', 'animated', 'annual', 'another', 'antique', 'anxious', 'any', 'apprehensive', 'appropriate', 'apt', 'arctic', 'arid', 'aromatic', 'artistic', 'ashamed', 'assured', 'astonishing', 'athletic', 'attached', 'attentive', 'attractive', 'austere', 'authentic', 'authorized', 'automatic', 'avaricious', 'average', 'aware', 'awesome', 'awful', 'awkward', 'babyish', 'bad', 'back', 'baggy', 'bare', 'barren', 'basic', 'beautiful', 'belated', 'beloved', 'beneficial', 'better', 'best', 'bewitched', 'big', 'big-hearted', 'biodegradable', 'bite-sized', 'bitter', 'black', 'black-and-white', 'bland', 'blank', 'blaring', 'bleak', 'blind', 'blissful', 'blond', 'blue', 'blushing', 'bogus', 'boiling', 'bold', 'bony', 'boring', 'bossy', 'both', 'bouncy', 'bountiful', 'bowed', 'brave', 'breakable', 'brief', 'bright', 'brilliant', 'brisk', 'broken', 'bronze', 'brown', 'bruised', 'bubbly', 'bulky', 'bumpy', 'buoyant', 'burdensome', 'burly', 'bustling', 'busy', 'buttery', 'buzzing', 'calculating', 'calm', 'candid', 'canine', 'capital', 'carefree', 'careful', 'careless', 'caring', 'cautious', 'cavernous', 'celebrated', 'charming', 'cheap', 'cheerful', 'cheery', 'chief', 'chilly', 'chubby', 'circular', 'classic', 'clean', 'clear', 'clear-cut', 'clever', 'close', 'closed', 'cloudy', 'clueless', 'clumsy', 'cluttered', 'coarse', 'cold', 'colorful', 'colorless', 'colossal', 'comfortable', 'common', 'compassionate', 'competent', 'complete', 'complex', 'complicated', 'composed', 'concerned', 'concrete', 'confused', 'conscious', 'considerate', 'constant', 'content', 'conventional', 'cooked', 'cool', 'cooperative', 'coordinated', 'corny', 'corrupt', 'costly', 'courageous', 'courteous', 'crafty', 'crazy', 'creamy', 'creative', 'creepy', 'criminal', 'crisp', 'critical', 'crooked', 'crowded', 'cruel', 'crushing', 'cuddly', 'cultivated', 'cultured', 'cumbersome', 'curly', 'curvy', 'cute', 'cylindrical', 'damaged', 'damp', 'dangerous', 'dapper', 'daring', 'darling', 'dark', 'dazzling', 'dead', 'deadly', 'deafening', 'dear', 'dearest', 'decent', 'decimal', 'decisive', 'deep', 'defenseless', 'defensive', 'defiant', 'deficient', 'definite', 'definitive', 'delayed', 'delectable', 'delicious', 'delightful', 'delirious', 'demanding', 'dense', 'dental', 'dependable', 'dependent', 'descriptive', 'deserted', 'detailed', 'determined', 'devoted', 'different', 'difficult', 'digital', 'diligent', 'dim', 'dimpled', 'dimwitted', 'direct', 'disastrous', 'discrete', 'disfigured', 'disgusting', 'disloyal', 'dismal', 'distant', 'downright', 'dreary', 'dirty', 'disguised', 'dishonest', 'dismal', 'distant', 'distinct', 'distorted', 'dizzy', 'dopey', 'doting', 'double', 'downright', 'drab', 'drafty', 'dramatic', 'dreary', 'droopy', 'dry', 'dual', 'dull', 'dutiful', 'each', 'eager', 'earnest', 'early', 'easy', 'easy-going', 'ecstatic', 'edible', 'educated', 'elaborate', 'elastic', 'elated', 'elderly', 'electric', 'elegant', 'elementary', 'elliptical', 'embarrassed', 'embellished', 'eminent', 'emotional', 'empty', 'enchanted', 'enchanting', 'energetic', 'enlightened', 'enormous', 'enraged', 'entire', 'envious', 'equal', 'equatorial', 'essential', 'esteemed', 'ethical', 'euphoric', 'even', 'evergreen', 'everlasting', 'every', 'evil', 'exalted', 'excellent', 'exemplary', 'exhausted', 'excitable', 'excited', 'exciting', 'exotic', 'expensive', 'experienced', 'expert', 'extraneous', 'extroverted', 'extra-large', 'extra-small', 'fabulous', 'failing', 'faint', 'fair', 'faithful', 'fake', 'false', 'familiar', 'famous', 'fancy', 'fantastic', 'far', 'faraway', 'far-flung', 'far-off', 'fast', 'fat', 'fatal', 'fatherly', 'favorable', 'favorite', 'fearful', 'fearless', 'feisty', 'feline', 'female', 'feminine', 'few', 'fickle', 'filthy', 'fine', 'finished', 'firm', 'first', 'firsthand', 'fitting', 'fixed', 'flaky', 'flamboyant', 'flashy', 'flat', 'flawed', 'flawless', 'flickering', 'flimsy', 'flippant', 'flowery', 'fluffy', 'fluid', 'flustered', 'focused', 'fond', 'foolhardy', 'foolish', 'forceful', 'forked', 'formal', 'forsaken', 'forthright', 'fortunate', 'fragrant', 'frail', 'frank', 'frayed', 'free', 'French', 'fresh', 'frequent', 'friendly', 'frightened', 'frightening', 'frigid', 'frilly', 'frizzy', 'frivolous', 'front', 'frosty', 'frozen', 'frugal', 'fruitful', 'full', 'fumbling', 'functional', 'funny', 'fussy', 'fuzzy', 'gargantuan', 'gaseous', 'general', 'generous', 'gentle', 'genuine', 'giant', 'giddy', 'gigantic', 'gifted', 'giving', 'glamorous', 'glaring', 'glass', 'gleaming', 'gleeful', 'glistening', 'glittering', 'gloomy', 'glorious', 'glossy', 'glum', 'golden', 'good', 'good-natured', 'gorgeous', 'graceful', 'gracious', 'grand', 'grandiose', 'granular', 'grateful', 'grave', 'gray', 'great', 'greedy', 'green', 'gregarious', 'grim', 'grimy', 'gripping', 'grizzled', 'gross', 'grotesque', 'grouchy', 'grounded', 'growing', 'growling', 'grown', 'grubby', 'gruesome', 'grumpy', 'guilty', 'gullible', 'gummy', 'hairy', 'half', 'handmade', 'handsome', 'handy', 'happy', 'happy-go-lucky', 'hard', 'hard-to-find', 'harmful', 'harmless', 'harmonious', 'harsh', 'hasty', 'hateful', 'haunting', 'healthy', 'heartfelt', 'hearty', 'heavenly', 'heavy', 'hefty', 'helpful', 'helpless', 'hidden', 'hideous', 'high', 'high-level', 'hilarious', 'hoarse', 'hollow', 'homely', 'honest', 'honorable', 'honored', 'hopeful', 'horrible', 'hospitable', 'hot', 'huge', 'humble', 'humiliating', 'humming', 'humongous', 'hungry', 'hurtful', 'husky', 'icky', 'icy', 'ideal', 'idealistic', 'identical', 'idle', 'idiotic', 'idolized', 'ignorant', 'ill', 'illegal', 'ill-fated', 'ill-informed', 'illiterate', 'illustrious', 'imaginary', 'imaginative', 'immaculate', 'immaterial', 'immediate', 'immense', 'impassioned', 'impeccable', 'impartial', 'imperfect', 'imperturbable', 'impish', 'impolite', 'important', 'impossible', 'impractical', 'impressionable', 'impressive', 'improbable', 'impure', 'inborn', 'incomparable', 'incompatible', 'incomplete', 'inconsequential', 'incredible', 'indelible', 'inexperienced', 'indolent', 'infamous', 'infantile', 'infatuated', 'inferior', 'infinite', 'informal', 'innocent', 'insecure', 'insidious', 'insignificant', 'insistent', 'instructive', 'insubstantial', 'intelligent', 'intent', 'intentional', 'interesting', 'internal', 'international', 'intrepid', 'ironclad', 'irresponsible', 'irritating', 'itchy', 'jaded', 'jagged', 'jam-packed', 'jaunty', 'jealous', 'jittery', 'joint', 'jolly', 'jovial', 'joyful', 'joyous', 'jubilant', 'judicious', 'juicy', 'jumbo', 'junior', 'jumpy', 'juvenile', 'kaleidoscopic', 'keen', 'key', 'kind', 'kindhearted', 'kindly', 'klutzy', 'knobby', 'knotty', 'knowledgeable', 'knowing', 'known', 'kooky', 'kosher', 'lame', 'lanky', 'large', 'last', 'lasting', 'late', 'lavish', 'lawful', 'lazy', 'leading', 'lean', 'leafy', 'left', 'legal', 'legitimate', 'light', 'lighthearted', 'likable', 'likely', 'limited', 'limp', 'limping', 'linear', 'lined', 'liquid', 'little', 'live', 'lively', 'livid', 'loathsome', 'lone', 'lonely', 'long', 'long-term', 'loose', 'lopsided', 'lost', 'loud', 'lovable', 'lovely', 'loving', 'low', 'loyal', 'lucky', 'lumbering', 'luminous', 'lumpy', 'lustrous', 'luxurious', 'mad', 'made-up', 'magnificent', 'majestic', 'major', 'male', 'mammoth', 'married', 'marvelous', 'masculine', 'massive', 'mature', 'meager', 'mealy', 'mean', 'measly', 'meaty', 'medical', 'mediocre', 'medium', 'meek', 'mellow', 'melodic', 'memorable', 'menacing', 'merry', 'messy', 'metallic', 'mild', 'milky', 'mindless', 'miniature', 'minor', 'minty', 'miserable', 'miserly', 'misguided', 'misty', 'mixed', 'modern', 'modest', 'moist', 'monstrous', 'monthly', 'monumental', 'moral', 'mortified', 'motherly', 'motionless', 'mountainous', 'muddy', 'muffled', 'multicolored', 'mundane', 'murky', 'mushy', 'musty', 'muted', 'mysterious', 'naive', 'narrow', 'nasty', 'natural', 'naughty', 'nautical', 'near', 'neat', 'necessary', 'needy', 'negative', 'neglected', 'negligible', 'neighboring', 'nervous', 'new', 'next', 'nice', 'nifty', 'nimble', 'nippy', 'nocturnal', 'noisy', 'nonstop', 'normal', 'notable', 'noted', 'noteworthy', 'novel', 'noxious', 'numb', 'nutritious', 'nutty', 'obedient', 'obese', 'oblong', 'oily', 'oblong', 'obvious', 'occasional', 'odd', 'oddball', 'offbeat', 'offensive', 'official', 'old', 'old-fashioned', 'only', 'open', 'optimal', 'optimistic', 'opulent', 'orange', 'orderly', 'organic', 'ornate', 'ornery', 'ordinary', 'original', 'other', 'our', 'outlying', 'outgoing', 'outlandish', 'outrageous', 'outstanding', 'oval', 'overcooked', 'overdue', 'overjoyed', 'overlooked', 'palatable', 'pale', 'paltry', 'parallel', 'parched', 'partial', 'passionate', 'past', 'pastel', 'peaceful', 'peppery', 'perfect', 'perfumed', 'periodic', 'perky', 'personal', 'pertinent', 'pesky', 'pessimistic', 'petty', 'phony', 'physical', 'piercing', 'pink', 'pitiful', 'plain', 'plaintive', 'plastic', 'playful', 'pleasant', 'pleased', 'pleasing', 'plump', 'plush', 'polished', 'polite', 'political', 'pointed', 'pointless', 'poised', 'poor', 'popular', 'portly', 'posh', 'positive', 'possible', 'potable', 'powerful', 'powerless', 'practical', 'precious', 'present', 'prestigious', 'pretty', 'precious', 'previous', 'pricey', 'prickly', 'primary', 'prime', 'pristine', 'private', 'prize', 'probable', 'productive', 'profitable', 'profuse', 'proper', 'proud', 'prudent', 'punctual', 'pungent', 'puny', 'pure', 'purple', 'pushy', 'putrid', 'puzzled', 'puzzling', 'quaint', 'qualified', 'quarrelsome', 'quarterly', 'queasy', 'querulous', 'questionable', 'quick', 'quick-witted', 'quiet', 'quintessential', 'quirky', 'quixotic', 'quizzical', 'radiant', 'ragged', 'rapid', 'rare', 'rash', 'raw', 'recent', 'reckless', 'rectangular', 'ready', 'real', 'realistic', 'reasonable', 'red', 'reflecting', 'regal', 'regular', 'reliable', 'relieved', 'remarkable', 'remorseful', 'remote', 'repentant', 'required', 'respectful', 'responsible', 'repulsive', 'revolving', 'rewarding', 'rich', 'rigid', 'right', 'ringed', 'ripe', 'roasted', 'robust', 'rosy', 'rotating', 'rotten', 'rough', 'round', 'rowdy', 'royal', 'rubbery', 'rundown', 'ruddy', 'rude', 'runny', 'rural', 'rusty', 'sad', 'safe', 'salty', 'same', 'sandy', 'sane', 'sarcastic', 'sardonic', 'satisfied', 'scaly', 'scarce', 'scared', 'scary', 'scented', 'scholarly', 'scientific', 'scornful', 'scratchy', 'scrawny', 'second', 'secondary', 'second-hand', 'secret', 'self-assured', 'self-reliant', 'selfish', 'sentimental', 'separate', 'serene', 'serious', 'serpentine', 'several', 'severe', 'shabby', 'shadowy', 'shady', 'shallow', 'shameful', 'shameless', 'sharp', 'shimmering', 'shiny', 'shocked', 'shocking', 'shoddy', 'short', 'short-term', 'showy', 'shrill', 'shy', 'sick', 'silent', 'silky', 'silly', 'silver', 'similar', 'simple', 'simplistic', 'sinful', 'single', 'sizzling', 'skeletal', 'skinny', 'sleepy', 'slight', 'slim', 'slimy', 'slippery', 'slow', 'slushy', 'small', 'smart', 'smoggy', 'smooth', 'smug', 'snappy', 'snarling', 'sneaky', 'sniveling', 'snoopy', 'sociable', 'soft', 'soggy', 'solid', 'somber', 'some', 'spherical', 'sophisticated', 'sore', 'sorrowful', 'soulful', 'soupy', 'sour', 'Spanish', 'sparkling', 'sparse', 'specific', 'spectacular', 'speedy', 'spicy', 'spiffy', 'spirited', 'spiteful', 'splendid', 'spotless', 'spotted', 'spry', 'square', 'squeaky', 'squiggly', 'stable', 'staid', 'stained', 'stale', 'standard', 'starchy', 'stark', 'starry', 'steep', 'sticky', 'stiff', 'stimulating', 'stingy', 'stormy', 'straight', 'strange', 'steel', 'strict', 'strident', 'striking', 'striped', 'strong', 'studious', 'stunning', 'stupendous', 'stupid', 'sturdy', 'stylish', 'subdued', 'submissive', 'substantial', 'subtle', 'suburban', 'sudden', 'sugary', 'sunny', 'super', 'superb', 'superficial', 'superior', 'supportive', 'sure-footed', 'surprised', 'suspicious', 'svelte', 'sweaty', 'sweet', 'sweltering', 'swift', 'sympathetic', 'tall', 'talkative', 'tame', 'tan', 'tangible', 'tart', 'tasty', 'tattered', 'taut', 'tedious', 'teeming', 'tempting', 'tender', 'tense', 'tepid', 'terrible', 'terrific', 'testy', 'thankful', 'that', 'these', 'thick', 'thin', 'third', 'thirsty', 'this', 'thorough', 'thorny', 'those', 'thoughtful', 'threadbare', 'thrifty', 'thunderous', 'tidy', 'tight', 'timely', 'tinted', 'tiny', 'tired', 'torn', 'total', 'tough', 'traumatic', 'treasured', 'tremendous', 'tragic', 'trained', 'tremendous', 'triangular', 'tricky', 'trifling', 'trim', 'trivial', 'troubled', 'true', 'trusting', 'trustworthy', 'trusty', 'truthful', 'tubby', 'turbulent', 'twin', 'ugly', 'ultimate', 'unacceptable', 'unaware', 'uncomfortable', 'uncommon', 'unconscious', 'understated', 'unequaled', 'uneven', 'unfinished', 'unfit', 'unfolded', 'unfortunate', 'unhappy', 'unhealthy', 'uniform', 'unimportant', 'unique', 'united', 'unkempt', 'unknown', 'unlawful', 'unlined', 'unlucky', 'unnatural', 'unpleasant', 'unrealistic', 'unripe', 'unruly', 'unselfish', 'unsightly', 'unsteady', 'unsung', 'untidy', 'untimely', 'untried', 'untrue', 'unused', 'unusual', 'unwelcome', 'unwieldy', 'unwilling', 'unwitting', 'unwritten', 'upbeat', 'upright', 'upset', 'urban', 'usable', 'used', 'useful', 'useless', 'utilized', 'utter', 'vacant', 'vague', 'vain', 'valid', 'valuable', 'vapid', 'variable', 'vast', 'velvety', 'venerated', 'vengeful', 'verifiable', 'vibrant', 'vicious', 'victorious', 'vigilant', 'vigorous', 'villainous', 'violet', 'violent', 'virtual', 'virtuous', 'visible', 'vital', 'vivacious', 'vivid', 'voluminous', 'wan', 'warlike', 'warm', 'warmhearted', 'warped', 'wary', 'wasteful', 'watchful', 'waterlogged', 'watery', 'wavy', 'wealthy', 'weak', 'weary', 'webbed', 'wee', 'weekly', 'weepy', 'weighty', 'weird', 'welcome', 'well-documented', 'well-groomed', 'well-informed', 'well-lit', 'well-made', 'well-off', 'well-to-do', 'well-worn', 'wet', 'which', 'whimsical', 'whirlwind', 'whispered', 'white', 'whole', 'whopping', 'wicked', 'wide', 'wide-eyed', 'wiggly', 'wild', 'willing', 'wilted', 'winding', 'windy', 'winged', 'wiry', 'wise', 'witty', 'wobbly', 'woeful', 'wonderful', 'wooden', 'woozy', 'wordy', 'worldly', 'worn', 'worried', 'worrisome', 'worse', 'worst', 'worthless', 'worthwhile', 'worthy', 'wrathful', 'wretched', 'writhing', 'wrong', 'wry', 'yawning', 'yearly', 'yellow', 'yellowish', 'young', 'youthful', 'yummy', 'zany', 'zealous', 'zesty', 'zigzag'] +with open('adjectives.txt') as f: + adjectives = list(map(str.rstrip, f)) + +with open('verbs.txt') as f: + verbs = list(map(str.rstrip, f)) + postform = random.choice(( '{adjective} {gender} who {verb}', '{adjective} {gender}', diff --git a/verbs.txt b/verbs.txt new file mode 100644 index 0000000..b3391c0 --- /dev/null +++ b/verbs.txt @@ -0,0 +1,1040 @@ +abide +accelerate +accept +accomplish +achieve +acquire +acted +activate +adapt +add +address +administer +admire +admit +adopt +advise +afford +agree +alert +alight +allow +altered +amuse +analyze +announce +annoy +answer +anticipate +apologize +appear +applaud +applied +appoint +appraise +appreciate +approve +arbitrate +argue +arise +arrange +arrest +arrive +ascertain +ask +assemble +assess +assist +assure +attach +attack +attain +attempt +attend +attract +audited +avoid +awake +back +bake +balance +ban +bang +bare +bat +bathe +battle +beam +bear +beat +beg +begin +behave +behold +belong +bend +beset +bet +bid +bind +bite +bleach +bleed +bless +blind +blink +blot +blow +blush +boast +boil +bolt +bomb +book +bore +borrow +bounce +bow +box +brake +branch +break +breathe +breed +brief +bring +broadcast +bruise +brush +bubble +budget +build +bump +burn +burst +bury +bust +buy +buze +calculate +call +camp +care +carry +carve +cast +catalog +catch +cause +challenge +change +charge +chart +chase +cheat +check +cheer +chew +choke +choose +chop +claim +clap +clarify +classify +clean +clear +cling +clip +close +clothe +coach +coil +collect +color +comb +come +command +communicate +compare +compete +compile +complain +complete +compose +compute +conceive +concentrate +conceptualize +concern +conclude +conduct +confess +confront +confuse +connect +conserve +consider +consist +consolidate +construct +consult +contain +continue +contract +control +convert +coordinate +copy +correct +correlate +cost +cough +counsel +count +cover +crack +crash +crawl +create +creep +critique +cross +crush +cry +cure +curl +curve +cut +cycle +dam +damage +dance +dare +deal +decay +deceive +decide +decorate +define +delay +delegate +delight +deliver +demonstrate +depend +describe +desert +deserve +design +destroy +detail +detect +determine +develop +devise +diagnose +dig +direct +disagree +disappear +disapprove +disarm +discover +dislike +dispense +display +disprove +dissect +distribute +dive +divert +divide +do +double +doubt +draft +drag +drain +dramatize +draw +dream +dress +drink +drip +drive +drop +drown +drum +dry +dust +dwell +earn +eat +edited +educate +eliminate +embarrass +employ +empty +enacted +encourage +end +endure +enforce +engineer +enhance +enjoy +enlist +ensure +enter +entertain +escape +establish +estimate +evaluate +examine +exceed +excite +excuse +execute +exercise +exhibit +exist +expand +expect +expedite +experiment +explain +explode +express +extend +extract +face +facilitate +fade +fail +fancy +fasten +fax +fear +feed +feel +fence +fetch +fight +file +fill +film +finalize +finance +find +fire +fit +fix +flap +flash +flee +fling +float +flood +flow +flower +fly +fold +follow +fool +forbid +force +forecast +forego +foresee +foretell +forget +forgive +form +formulate +forsake +frame +freeze +frighten +fry +gather +gaze +generate +get +give +glow +glue +go +govern +grab +graduate +grate +grease +greet +grin +grind +grip +groan +grow +guarantee +guard +guess +guide +hammer +hand +handle +handwrite +hang +happen +harass +harm +hate +haunt +head +heal +heap +hear +heat +help +hide +hit +hold +hook +hop +hope +hover +hug +hum +hunt +hurry +hurt +hypothesize +identify +ignore +illustrate +imagine +implement +impress +improve +improvise +include +increase +induce +influence +inform +initiate +inject +injure +inlay +innovate +input +inspect +inspire +install +institute +instruct +insure +integrate +intend +intensify +interest +interfere +interlay +interpret +interrupt +interview +introduce +invent +inventory +investigate +invite +irritate +itch +jail +jam +jog +join +joke +judge +juggle +jump +justify +keep +kept +kick +kill +kiss +kneel +knit +knock +knot +know +label +land +last +laugh +launch +lay +lead +lean +leap +learn +leave +lecture +led +lend +let +level +license +lick +lie +lifted +light +lighten +like +list +listen +live +load +locate +lock +log +long +look +lose +love +maintain +make +man +manage +manipulate +manufacture +map +march +mark +market +marry +match +mate +matter +mean +measure +meddle +mediate +meet +melt +melt +memorize +mend +mentor +milk +mine +mislead +miss +misspell +mistake +misunderstand +mix +moan +model +modify +monitor +moor +motivate +mourn +move +mow +muddle +mug +multiply +murder +nail +name +navigate +need +negotiate +nest +nod +nominate +normalize +note +notice +number +obey +object +observe +obtain +occur +offend +offer +officiate +open +operate +order +organize +oriented +originate +overcome +overdo +overdraw +overflow +overhear +overtake +overthrow +owe +own +pack +paddle +paint +park +part +participate +pass +paste +pat +pause +pay +peck +pedal +peel +peep +perceive +perfect +perform +permit +persuade +phone +photograph +pick +pilot +pinch +pine +pinpoint +pioneer +place +plan +plant +play +plead +please +plug +point +poke +polish +pop +possess +post +pour +practice +praised +pray +preach +precede +predict +prefer +prepare +prescribe +present +preserve +preset +preside +press +pretend +prevent +prick +print +process +procure +produce +profess +program +progress +project +promise +promote +proofread +propose +protect +prove +provide +publicize +pull +pump +punch +puncture +punish +purchase +push +put +qualify +question +queue +quit +race +radiate +rain +raise +rank +rate +reach +read +realign +realize +reason +receive +recognize +recommend +reconcile +record +recruit +reduce +refer +reflect +refuse +regret +regulate +rehabilitate +reign +reinforce +reject +rejoice +relate +relax +release +rely +remain +remember +remind +remove +render +reorganize +repair +repeat +replace +reply +report +represent +reproduce +request +rescue +research +resolve +respond +restored +restructure +retire +retrieve +return +review +revise +rhyme +rid +ride +ring +rinse +rise +risk +rob +rock +roll +rot +rub +ruin +rule +run +rush +sack +sail +satisfy +save +saw +say +scare +scatter +schedule +scold +scorch +scrape +scratch +scream +screw +scribble +scrub +seal +search +secure +see +seek +select +sell +send +sense +separate +serve +service +set +settle +sew +shade +shake +shape +share +shave +shear +shed +shelter +shine +shiver +shock +shoe +shoot +shop +show +shrink +shrug +shut +sigh +sign +signal +simplify +sin +sing +sink +sip +sit +sketch +ski +skip +slap +slay +sleep +slide +sling +slink +slip +slit +slow +smash +smell +smile +smite +smoke +snatch +sneak +sneeze +sniff +snore +snow +soak +solve +soothe +soothsay +sort +sound +sow +spare +spark +sparkle +speak +specify +speed +spell +spend +spill +spin +spit +split +spoil +spot +spray +spread +spring +sprout +squash +squeak +squeal +squeeze +stain +stamp +stand +stare +start +stay +steal +steer +step +stick +stimulate +sting +stink +stir +stitch +stop +store +strap +streamline +strengthen +stretch +stride +strike +string +strip +strive +stroke +structure +study +stuff +sublet +subtract +succeed +suck +suffer +suggest +suit +summarize +supervise +supply +support +suppose +surprise +surround +suspect +suspend +swear +sweat +sweep +swell +swim +swing +switch +symbolize +synthesize +systemize +tabulate +take +talk +tame +tap +target +taste +teach +tear +tease +telephone +tell +tempt +terrify +test +thank +thaw +think +thrive +throw +thrust +tick +tickle +tie +time +tip +tire +touch +tour +tow +trace +trade +train +transcribe +transfer +transform +translate +transport +trap +travel +tread +treat +tremble +trick +trip +trot +trouble +troubleshoot +trust +try +tug +tumble +turn +tutor +twist +type +undergo +understand +undertake +undress +unfasten +unify +unite +unlock +unpack +untidy +update +upgrade +uphold +upset +use +utilize +vanish +verbalize +verify +vex +visit +wail +wait +wake +walk +wander +want +warm +warn +wash +waste +watch +water +wave +wear +weave +wed +weep +weigh +welcome +wend +wet +whine +whip +whirl +whisper +whistle +win +wind +wink +wipe +wish +withdraw +withhold +withstand +wobble +wonder +work +worry +wrap +wreck +wrestle +wriggle +wring +write +x-ray +yawn +yell +zip +zoom -- 2.39.2 From e35e540e52e79fec47f304a16a11ef3d9d475a9f Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 16 Jan 2023 00:23:32 -0800 Subject: [PATCH 07/12] first commit --- README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 -- 2.39.2 From 61ad41ad6afd94e6387aefa789ea3cd904129113 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 16 Jan 2023 00:23:32 -0800 Subject: [PATCH 08/12] first commit --- lgfbot.py | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lgfbot.py diff --git a/lgfbot.py b/lgfbot.py new file mode 100644 index 0000000..485821a --- /dev/null +++ b/lgfbot.py @@ -0,0 +1,58 @@ +import random +from mastodon import Mastodon +import os + +if os.path.exists('./.lgfbot/') == False: + os.mkdir('./.lgfbot') + +if os.path.exists('./.lgfbot/lgf_client.secret') == False: + instance = input('Please enter your instance: ') + if not instance[:4] == 'http': + instance = 'https://' + instance + Mastodon.create_app('Hourly lgf', api_base_url = instance, to_file = './.lgfbot/lgf_client.secret') + +mastodon = Mastodon( + client_id = './.lgfbot/lgf_client.secret', +) + +if os.path.exists('./.lgfbot/lgf_user.secret') == False: + print('To post, lgfbot needs to generate an access token') + username = input('Enter your username: ') + password = input('Enter your password: ') + mastodon.log_in(username=username, password=password, scopes=['write:statuses'], to_file='./.lgfbot/lgf_user.secret') + + +mastodon = Mastodon( + access_token = './.lgfbot/lgf_user.secret' +) + +verbs = ['abide', 'accelerate', 'accept', 'accomplish', 'achieve', 'acquire', 'acted', 'activate', 'adapt', 'add', 'address', 'administer', 'admire', 'admit', 'adopt', 'advise', 'afford', 'agree', 'alert', 'alight', 'allow', 'altered', 'amuse', 'analyze', 'announce', 'annoy', 'answer', 'anticipate', 'apologize', 'appear', 'applaud', 'applied', 'appoint', 'appraise', 'appreciate', 'approve', 'arbitrate', 'argue', 'arise', 'arrange', 'arrest', 'arrive', 'ascertain', 'ask', 'assemble', 'assess', 'assist', 'assure', 'attach', 'attack', 'attain', 'attempt', 'attend', 'attract', 'audited', 'avoid', 'awake', 'back', 'bake', 'balance', 'ban', 'bang', 'bare', 'bat', 'bathe', 'battle', 'beam', 'bear', 'beat', 'beg', 'begin', 'behave', 'behold', 'belong', 'bend', 'beset', 'bet', 'bid', 'bind', 'bite', 'bleach', 'bleed', 'bless', 'blind', 'blink', 'blot', 'blow', 'blush', 'boast', 'boil', 'bolt', 'bomb', 'book', 'bore', 'borrow', 'bounce', 'bow', 'box', 'brake', 'branch', 'break', 'breathe', 'breed', 'brief', 'bring', 'broadcast', 'bruise', 'brush', 'bubble', 'budget', 'build', 'bump', 'burn', 'burst', 'bury', 'bust', 'buy', 'buze', 'calculate', 'call', 'camp', 'care', 'carry', 'carve', 'cast', 'catalog', 'catch', 'cause', 'challenge', 'change', 'charge', 'chart', 'chase', 'cheat', 'check', 'cheer', 'chew', 'choke', 'choose', 'chop', 'claim', 'clap', 'clarify', 'classify', 'clean', 'clear', 'cling', 'clip', 'close', 'clothe', 'coach', 'coil', 'collect', 'color', 'comb', 'come', 'command', 'communicate', 'compare', 'compete', 'compile', 'complain', 'complete', 'compose', 'compute', 'conceive', 'concentrate', 'conceptualize', 'concern', 'conclude', 'conduct', 'confess', 'confront', 'confuse', 'connect', 'conserve', 'consider', 'consist', 'consolidate', 'construct', 'consult', 'contain', 'continue', 'contract', 'control', 'convert', 'coordinate', 'copy', 'correct', 'correlate', 'cost', 'cough', 'counsel', 'count', 'cover', 'crack', 'crash', 'crawl', 'create', 'creep', 'critique', 'cross', 'crush', 'cry', 'cure', 'curl', 'curve', 'cut', 'cycle', 'dam', 'damage', 'dance', 'dare', 'deal', 'decay', 'deceive', 'decide', 'decorate', 'define', 'delay', 'delegate', 'delight', 'deliver', 'demonstrate', 'depend', 'describe', 'desert', 'deserve', 'design', 'destroy', 'detail', 'detect', 'determine', 'develop', 'devise', 'diagnose', 'dig', 'direct', 'disagree', 'disappear', 'disapprove', 'disarm', 'discover', 'dislike', 'dispense', 'display', 'disprove', 'dissect', 'distribute', 'dive', 'divert', 'divide', 'do', 'double', 'doubt', 'draft', 'drag', 'drain', 'dramatize', 'draw', 'dream', 'dress', 'drink', 'drip', 'drive', 'drop', 'drown', 'drum', 'dry', 'dust', 'dwell', 'earn', 'eat', 'edited', 'educate', 'eliminate', 'embarrass', 'employ', 'empty', 'enacted', 'encourage', 'end', 'endure', 'enforce', 'engineer', 'enhance', 'enjoy', 'enlist', 'ensure', 'enter', 'entertain', 'escape', 'establish', 'estimate', 'evaluate', 'examine', 'exceed', 'excite', 'excuse', 'execute', 'exercise', 'exhibit', 'exist', 'expand', 'expect', 'expedite', 'experiment', 'explain', 'explode', 'express', 'extend', 'extract', 'face', 'facilitate', 'fade', 'fail', 'fancy', 'fasten', 'fax', 'fear', 'feed', 'feel', 'fence', 'fetch', 'fight', 'file', 'fill', 'film', 'finalize', 'finance', 'find', 'fire', 'fit', 'fix', 'flap', 'flash', 'flee', 'fling', 'float', 'flood', 'flow', 'flower', 'fly', 'fold', 'follow', 'fool', 'forbid', 'force', 'forecast', 'forego', 'foresee', 'foretell', 'forget', 'forgive', 'form', 'formulate', 'forsake', 'frame', 'freeze', 'frighten', 'fry', 'gather', 'gaze', 'generate', 'get', 'give', 'glow', 'glue', 'go', 'govern', 'grab', 'graduate', 'grate', 'grease', 'greet', 'grin', 'grind', 'grip', 'groan', 'grow', 'guarantee', 'guard', 'guess', 'guide', 'hammer', 'hand', 'handle', 'handwrite', 'hang', 'happen', 'harass', 'harm', 'hate', 'haunt', 'head', 'heal', 'heap', 'hear', 'heat', 'help', 'hide', 'hit', 'hold', 'hook', 'hop', 'hope', 'hover', 'hug', 'hum', 'hunt', 'hurry', 'hurt', 'hypothesize', 'identify', 'ignore', 'illustrate', 'imagine', 'implement', 'impress', 'improve', 'improvise', 'include', 'increase', 'induce', 'influence', 'inform', 'initiate', 'inject', 'injure', 'inlay', 'innovate', 'input', 'inspect', 'inspire', 'install', 'institute', 'instruct', 'insure', 'integrate', 'intend', 'intensify', 'interest', 'interfere', 'interlay', 'interpret', 'interrupt', 'interview', 'introduce', 'invent', 'inventory', 'investigate', 'invite', 'irritate', 'itch', 'jail', 'jam', 'jog', 'join', 'joke', 'judge', 'juggle', 'jump', 'justify', 'keep', 'kept', 'kick', 'kill', 'kiss', 'kneel', 'knit', 'knock', 'knot', 'know', 'label', 'land', 'last', 'laugh', 'launch', 'lay', 'lead', 'lean', 'leap', 'learn', 'leave', 'lecture', 'led', 'lend', 'let', 'level', 'license', 'lick', 'lie', 'lifted', 'light', 'lighten', 'like', 'list', 'listen', 'live', 'load', 'locate', 'lock', 'log', 'long', 'look', 'lose', 'love', 'maintain', 'make', 'man', 'manage', 'manipulate', 'manufacture', 'map', 'march', 'mark', 'market', 'marry', 'match', 'mate', 'matter', 'mean', 'measure', 'meddle', 'mediate', 'meet', 'melt', 'melt', 'memorize', 'mend', 'mentor', 'milk', 'mine', 'mislead', 'miss', 'misspell', 'mistake', 'misunderstand', 'mix', 'moan', 'model', 'modify', 'monitor', 'moor', 'motivate', 'mourn', 'move', 'mow', 'muddle', 'mug', 'multiply', 'murder', 'nail', 'name', 'navigate', 'need', 'negotiate', 'nest', 'nod', 'nominate', 'normalize', 'note', 'notice', 'number', 'obey', 'object', 'observe', 'obtain', 'occur', 'offend', 'offer', 'officiate', 'open', 'operate', 'order', 'organize', 'oriented', 'originate', 'overcome', 'overdo', 'overdraw', 'overflow', 'overhear', 'overtake', 'overthrow', 'owe', 'own', 'pack', 'paddle', 'paint', 'park', 'part', 'participate', 'pass', 'paste', 'pat', 'pause', 'pay', 'peck', 'pedal', 'peel', 'peep', 'perceive', 'perfect', 'perform', 'permit', 'persuade', 'phone', 'photograph', 'pick', 'pilot', 'pinch', 'pine', 'pinpoint', 'pioneer', 'place', 'plan', 'plant', 'play', 'plead', 'please', 'plug', 'point', 'poke', 'polish', 'pop', 'possess', 'post', 'pour', 'practice', 'praised', 'pray', 'preach', 'precede', 'predict', 'prefer', 'prepare', 'prescribe', 'present', 'preserve', 'preset', 'preside', 'press', 'pretend', 'prevent', 'prick', 'print', 'process', 'procure', 'produce', 'profess', 'program', 'progress', 'project', 'promise', 'promote', 'proofread', 'propose', 'protect', 'prove', 'provide', 'publicize', 'pull', 'pump', 'punch', 'puncture', 'punish', 'purchase', 'push', 'put', 'qualify', 'question', 'queue', 'quit', 'race', 'radiate', 'rain', 'raise', 'rank', 'rate', 'reach', 'read', 'realign', 'realize', 'reason', 'receive', 'recognize', 'recommend', 'reconcile', 'record', 'recruit', 'reduce', 'refer', 'reflect', 'refuse', 'regret', 'regulate', 'rehabilitate', 'reign', 'reinforce', 'reject', 'rejoice', 'relate', 'relax', 'release', 'rely', 'remain', 'remember', 'remind', 'remove', 'render', 'reorganize', 'repair', 'repeat', 'replace', 'reply', 'report', 'represent', 'reproduce', 'request', 'rescue', 'research', 'resolve', 'respond', 'restored', 'restructure', 'retire', 'retrieve', 'return', 'review', 'revise', 'rhyme', 'rid', 'ride', 'ring', 'rinse', 'rise', 'risk', 'rob', 'rock', 'roll', 'rot', 'rub', 'ruin', 'rule', 'run', 'rush', 'sack', 'sail', 'satisfy', 'save', 'saw', 'say', 'scare', 'scatter', 'schedule', 'scold', 'scorch', 'scrape', 'scratch', 'scream', 'screw', 'scribble', 'scrub', 'seal', 'search', 'secure', 'see', 'seek', 'select', 'sell', 'send', 'sense', 'separate', 'serve', 'service', 'set', 'settle', 'sew', 'shade', 'shake', 'shape', 'share', 'shave', 'shear', 'shed', 'shelter', 'shine', 'shiver', 'shock', 'shoe', 'shoot', 'shop', 'show', 'shrink', 'shrug', 'shut', 'sigh', 'sign', 'signal', 'simplify', 'sin', 'sing', 'sink', 'sip', 'sit', 'sketch', 'ski', 'skip', 'slap', 'slay', 'sleep', 'slide', 'sling', 'slink', 'slip', 'slit', 'slow', 'smash', 'smell', 'smile', 'smite', 'smoke', 'snatch', 'sneak', 'sneeze', 'sniff', 'snore', 'snow', 'soak', 'solve', 'soothe', 'soothsay', 'sort', 'sound', 'sow', 'spare', 'spark', 'sparkle', 'speak', 'specify', 'speed', 'spell', 'spend', 'spill', 'spin', 'spit', 'split', 'spoil', 'spot', 'spray', 'spread', 'spring', 'sprout', 'squash', 'squeak', 'squeal', 'squeeze', 'stain', 'stamp', 'stand', 'stare', 'start', 'stay', 'steal', 'steer', 'step', 'stick', 'stimulate', 'sting', 'stink', 'stir', 'stitch', 'stop', 'store', 'strap', 'streamline', 'strengthen', 'stretch', 'stride', 'strike', 'string', 'strip', 'strive', 'stroke', 'structure', 'study', 'stuff', 'sublet', 'subtract', 'succeed', 'suck', 'suffer', 'suggest', 'suit', 'summarize', 'supervise', 'supply', 'support', 'suppose', 'surprise', 'surround', 'suspect', 'suspend', 'swear', 'sweat', 'sweep', 'swell', 'swim', 'swing', 'switch', 'symbolize', 'synthesize', 'systemize', 'tabulate', 'take', 'talk', 'tame', 'tap', 'target', 'taste', 'teach', 'tear', 'tease', 'telephone', 'tell', 'tempt', 'terrify', 'test', 'thank', 'thaw', 'think', 'thrive', 'throw', 'thrust', 'tick', 'tickle', 'tie', 'time', 'tip', 'tire', 'touch', 'tour', 'tow', 'trace', 'trade', 'train', 'transcribe', 'transfer', 'transform', 'translate', 'transport', 'trap', 'travel', 'tread', 'treat', 'tremble', 'trick', 'trip', 'trot', 'trouble', 'troubleshoot', 'trust', 'try', 'tug', 'tumble', 'turn', 'tutor', 'twist', 'type', 'undergo', 'understand', 'undertake', 'undress', 'unfasten', 'unify', 'unite', 'unlock', 'unpack', 'untidy', 'update', 'upgrade', 'uphold', 'upset', 'use', 'utilize', 'vanish', 'verbalize', 'verify', 'vex', 'visit', 'wail', 'wait', 'wake', 'walk', 'wander', 'want', 'warm', 'warn', 'wash', 'waste', 'watch', 'water', 'wave', 'wear', 'weave', 'wed', 'weep', 'weigh', 'welcome', 'wend', 'wet', 'whine', 'whip', 'whirl', 'whisper', 'whistle', 'win', 'wind', 'wink', 'wipe', 'wish', 'withdraw', 'withhold', 'withstand', 'wobble', 'wonder', 'work', 'worry', 'wrap', 'wreck', 'wrestle', 'wriggle', 'wring', 'write', 'x-ray', 'yawn', 'yell', 'zip', 'zoom'] +adjectives = ['abandoned', 'able', 'absolute', 'adorable', 'adventurous', 'academic', 'acceptable', 'acclaimed', 'accomplished', 'accurate', 'aching', 'acidic', 'acrobatic', 'active', 'actual', 'adept', 'admirable', 'admired', 'adolescent', 'adorable', 'adored', 'advanced', 'afraid', 'affectionate', 'aged', 'aggravating', 'aggressive', 'agile', 'agitated', 'agonizing', 'agreeable', 'ajar', 'alarmed', 'alarming', 'alert', 'alienated', 'alive', 'all', 'altruistic', 'amazing', 'ambitious', 'ample', 'amused', 'amusing', 'anchored', 'ancient', 'angelic', 'angry', 'anguished', 'animated', 'annual', 'another', 'antique', 'anxious', 'any', 'apprehensive', 'appropriate', 'apt', 'arctic', 'arid', 'aromatic', 'artistic', 'ashamed', 'assured', 'astonishing', 'athletic', 'attached', 'attentive', 'attractive', 'austere', 'authentic', 'authorized', 'automatic', 'avaricious', 'average', 'aware', 'awesome', 'awful', 'awkward', 'babyish', 'bad', 'back', 'baggy', 'bare', 'barren', 'basic', 'beautiful', 'belated', 'beloved', 'beneficial', 'better', 'best', 'bewitched', 'big', 'big-hearted', 'biodegradable', 'bite-sized', 'bitter', 'black', 'black-and-white', 'bland', 'blank', 'blaring', 'bleak', 'blind', 'blissful', 'blond', 'blue', 'blushing', 'bogus', 'boiling', 'bold', 'bony', 'boring', 'bossy', 'both', 'bouncy', 'bountiful', 'bowed', 'brave', 'breakable', 'brief', 'bright', 'brilliant', 'brisk', 'broken', 'bronze', 'brown', 'bruised', 'bubbly', 'bulky', 'bumpy', 'buoyant', 'burdensome', 'burly', 'bustling', 'busy', 'buttery', 'buzzing', 'calculating', 'calm', 'candid', 'canine', 'capital', 'carefree', 'careful', 'careless', 'caring', 'cautious', 'cavernous', 'celebrated', 'charming', 'cheap', 'cheerful', 'cheery', 'chief', 'chilly', 'chubby', 'circular', 'classic', 'clean', 'clear', 'clear-cut', 'clever', 'close', 'closed', 'cloudy', 'clueless', 'clumsy', 'cluttered', 'coarse', 'cold', 'colorful', 'colorless', 'colossal', 'comfortable', 'common', 'compassionate', 'competent', 'complete', 'complex', 'complicated', 'composed', 'concerned', 'concrete', 'confused', 'conscious', 'considerate', 'constant', 'content', 'conventional', 'cooked', 'cool', 'cooperative', 'coordinated', 'corny', 'corrupt', 'costly', 'courageous', 'courteous', 'crafty', 'crazy', 'creamy', 'creative', 'creepy', 'criminal', 'crisp', 'critical', 'crooked', 'crowded', 'cruel', 'crushing', 'cuddly', 'cultivated', 'cultured', 'cumbersome', 'curly', 'curvy', 'cute', 'cylindrical', 'damaged', 'damp', 'dangerous', 'dapper', 'daring', 'darling', 'dark', 'dazzling', 'dead', 'deadly', 'deafening', 'dear', 'dearest', 'decent', 'decimal', 'decisive', 'deep', 'defenseless', 'defensive', 'defiant', 'deficient', 'definite', 'definitive', 'delayed', 'delectable', 'delicious', 'delightful', 'delirious', 'demanding', 'dense', 'dental', 'dependable', 'dependent', 'descriptive', 'deserted', 'detailed', 'determined', 'devoted', 'different', 'difficult', 'digital', 'diligent', 'dim', 'dimpled', 'dimwitted', 'direct', 'disastrous', 'discrete', 'disfigured', 'disgusting', 'disloyal', 'dismal', 'distant', 'downright', 'dreary', 'dirty', 'disguised', 'dishonest', 'dismal', 'distant', 'distinct', 'distorted', 'dizzy', 'dopey', 'doting', 'double', 'downright', 'drab', 'drafty', 'dramatic', 'dreary', 'droopy', 'dry', 'dual', 'dull', 'dutiful', 'each', 'eager', 'earnest', 'early', 'easy', 'easy-going', 'ecstatic', 'edible', 'educated', 'elaborate', 'elastic', 'elated', 'elderly', 'electric', 'elegant', 'elementary', 'elliptical', 'embarrassed', 'embellished', 'eminent', 'emotional', 'empty', 'enchanted', 'enchanting', 'energetic', 'enlightened', 'enormous', 'enraged', 'entire', 'envious', 'equal', 'equatorial', 'essential', 'esteemed', 'ethical', 'euphoric', 'even', 'evergreen', 'everlasting', 'every', 'evil', 'exalted', 'excellent', 'exemplary', 'exhausted', 'excitable', 'excited', 'exciting', 'exotic', 'expensive', 'experienced', 'expert', 'extraneous', 'extroverted', 'extra-large', 'extra-small', 'fabulous', 'failing', 'faint', 'fair', 'faithful', 'fake', 'false', 'familiar', 'famous', 'fancy', 'fantastic', 'far', 'faraway', 'far-flung', 'far-off', 'fast', 'fat', 'fatal', 'fatherly', 'favorable', 'favorite', 'fearful', 'fearless', 'feisty', 'feline', 'female', 'feminine', 'few', 'fickle', 'filthy', 'fine', 'finished', 'firm', 'first', 'firsthand', 'fitting', 'fixed', 'flaky', 'flamboyant', 'flashy', 'flat', 'flawed', 'flawless', 'flickering', 'flimsy', 'flippant', 'flowery', 'fluffy', 'fluid', 'flustered', 'focused', 'fond', 'foolhardy', 'foolish', 'forceful', 'forked', 'formal', 'forsaken', 'forthright', 'fortunate', 'fragrant', 'frail', 'frank', 'frayed', 'free', 'French', 'fresh', 'frequent', 'friendly', 'frightened', 'frightening', 'frigid', 'frilly', 'frizzy', 'frivolous', 'front', 'frosty', 'frozen', 'frugal', 'fruitful', 'full', 'fumbling', 'functional', 'funny', 'fussy', 'fuzzy', 'gargantuan', 'gaseous', 'general', 'generous', 'gentle', 'genuine', 'giant', 'giddy', 'gigantic', 'gifted', 'giving', 'glamorous', 'glaring', 'glass', 'gleaming', 'gleeful', 'glistening', 'glittering', 'gloomy', 'glorious', 'glossy', 'glum', 'golden', 'good', 'good-natured', 'gorgeous', 'graceful', 'gracious', 'grand', 'grandiose', 'granular', 'grateful', 'grave', 'gray', 'great', 'greedy', 'green', 'gregarious', 'grim', 'grimy', 'gripping', 'grizzled', 'gross', 'grotesque', 'grouchy', 'grounded', 'growing', 'growling', 'grown', 'grubby', 'gruesome', 'grumpy', 'guilty', 'gullible', 'gummy', 'hairy', 'half', 'handmade', 'handsome', 'handy', 'happy', 'happy-go-lucky', 'hard', 'hard-to-find', 'harmful', 'harmless', 'harmonious', 'harsh', 'hasty', 'hateful', 'haunting', 'healthy', 'heartfelt', 'hearty', 'heavenly', 'heavy', 'hefty', 'helpful', 'helpless', 'hidden', 'hideous', 'high', 'high-level', 'hilarious', 'hoarse', 'hollow', 'homely', 'honest', 'honorable', 'honored', 'hopeful', 'horrible', 'hospitable', 'hot', 'huge', 'humble', 'humiliating', 'humming', 'humongous', 'hungry', 'hurtful', 'husky', 'icky', 'icy', 'ideal', 'idealistic', 'identical', 'idle', 'idiotic', 'idolized', 'ignorant', 'ill', 'illegal', 'ill-fated', 'ill-informed', 'illiterate', 'illustrious', 'imaginary', 'imaginative', 'immaculate', 'immaterial', 'immediate', 'immense', 'impassioned', 'impeccable', 'impartial', 'imperfect', 'imperturbable', 'impish', 'impolite', 'important', 'impossible', 'impractical', 'impressionable', 'impressive', 'improbable', 'impure', 'inborn', 'incomparable', 'incompatible', 'incomplete', 'inconsequential', 'incredible', 'indelible', 'inexperienced', 'indolent', 'infamous', 'infantile', 'infatuated', 'inferior', 'infinite', 'informal', 'innocent', 'insecure', 'insidious', 'insignificant', 'insistent', 'instructive', 'insubstantial', 'intelligent', 'intent', 'intentional', 'interesting', 'internal', 'international', 'intrepid', 'ironclad', 'irresponsible', 'irritating', 'itchy', 'jaded', 'jagged', 'jam-packed', 'jaunty', 'jealous', 'jittery', 'joint', 'jolly', 'jovial', 'joyful', 'joyous', 'jubilant', 'judicious', 'juicy', 'jumbo', 'junior', 'jumpy', 'juvenile', 'kaleidoscopic', 'keen', 'key', 'kind', 'kindhearted', 'kindly', 'klutzy', 'knobby', 'knotty', 'knowledgeable', 'knowing', 'known', 'kooky', 'kosher', 'lame', 'lanky', 'large', 'last', 'lasting', 'late', 'lavish', 'lawful', 'lazy', 'leading', 'lean', 'leafy', 'left', 'legal', 'legitimate', 'light', 'lighthearted', 'likable', 'likely', 'limited', 'limp', 'limping', 'linear', 'lined', 'liquid', 'little', 'live', 'lively', 'livid', 'loathsome', 'lone', 'lonely', 'long', 'long-term', 'loose', 'lopsided', 'lost', 'loud', 'lovable', 'lovely', 'loving', 'low', 'loyal', 'lucky', 'lumbering', 'luminous', 'lumpy', 'lustrous', 'luxurious', 'mad', 'made-up', 'magnificent', 'majestic', 'major', 'male', 'mammoth', 'married', 'marvelous', 'masculine', 'massive', 'mature', 'meager', 'mealy', 'mean', 'measly', 'meaty', 'medical', 'mediocre', 'medium', 'meek', 'mellow', 'melodic', 'memorable', 'menacing', 'merry', 'messy', 'metallic', 'mild', 'milky', 'mindless', 'miniature', 'minor', 'minty', 'miserable', 'miserly', 'misguided', 'misty', 'mixed', 'modern', 'modest', 'moist', 'monstrous', 'monthly', 'monumental', 'moral', 'mortified', 'motherly', 'motionless', 'mountainous', 'muddy', 'muffled', 'multicolored', 'mundane', 'murky', 'mushy', 'musty', 'muted', 'mysterious', 'naive', 'narrow', 'nasty', 'natural', 'naughty', 'nautical', 'near', 'neat', 'necessary', 'needy', 'negative', 'neglected', 'negligible', 'neighboring', 'nervous', 'new', 'next', 'nice', 'nifty', 'nimble', 'nippy', 'nocturnal', 'noisy', 'nonstop', 'normal', 'notable', 'noted', 'noteworthy', 'novel', 'noxious', 'numb', 'nutritious', 'nutty', 'obedient', 'obese', 'oblong', 'oily', 'oblong', 'obvious', 'occasional', 'odd', 'oddball', 'offbeat', 'offensive', 'official', 'old', 'old-fashioned', 'only', 'open', 'optimal', 'optimistic', 'opulent', 'orange', 'orderly', 'organic', 'ornate', 'ornery', 'ordinary', 'original', 'other', 'our', 'outlying', 'outgoing', 'outlandish', 'outrageous', 'outstanding', 'oval', 'overcooked', 'overdue', 'overjoyed', 'overlooked', 'palatable', 'pale', 'paltry', 'parallel', 'parched', 'partial', 'passionate', 'past', 'pastel', 'peaceful', 'peppery', 'perfect', 'perfumed', 'periodic', 'perky', 'personal', 'pertinent', 'pesky', 'pessimistic', 'petty', 'phony', 'physical', 'piercing', 'pink', 'pitiful', 'plain', 'plaintive', 'plastic', 'playful', 'pleasant', 'pleased', 'pleasing', 'plump', 'plush', 'polished', 'polite', 'political', 'pointed', 'pointless', 'poised', 'poor', 'popular', 'portly', 'posh', 'positive', 'possible', 'potable', 'powerful', 'powerless', 'practical', 'precious', 'present', 'prestigious', 'pretty', 'precious', 'previous', 'pricey', 'prickly', 'primary', 'prime', 'pristine', 'private', 'prize', 'probable', 'productive', 'profitable', 'profuse', 'proper', 'proud', 'prudent', 'punctual', 'pungent', 'puny', 'pure', 'purple', 'pushy', 'putrid', 'puzzled', 'puzzling', 'quaint', 'qualified', 'quarrelsome', 'quarterly', 'queasy', 'querulous', 'questionable', 'quick', 'quick-witted', 'quiet', 'quintessential', 'quirky', 'quixotic', 'quizzical', 'radiant', 'ragged', 'rapid', 'rare', 'rash', 'raw', 'recent', 'reckless', 'rectangular', 'ready', 'real', 'realistic', 'reasonable', 'red', 'reflecting', 'regal', 'regular', 'reliable', 'relieved', 'remarkable', 'remorseful', 'remote', 'repentant', 'required', 'respectful', 'responsible', 'repulsive', 'revolving', 'rewarding', 'rich', 'rigid', 'right', 'ringed', 'ripe', 'roasted', 'robust', 'rosy', 'rotating', 'rotten', 'rough', 'round', 'rowdy', 'royal', 'rubbery', 'rundown', 'ruddy', 'rude', 'runny', 'rural', 'rusty', 'sad', 'safe', 'salty', 'same', 'sandy', 'sane', 'sarcastic', 'sardonic', 'satisfied', 'scaly', 'scarce', 'scared', 'scary', 'scented', 'scholarly', 'scientific', 'scornful', 'scratchy', 'scrawny', 'second', 'secondary', 'second-hand', 'secret', 'self-assured', 'self-reliant', 'selfish', 'sentimental', 'separate', 'serene', 'serious', 'serpentine', 'several', 'severe', 'shabby', 'shadowy', 'shady', 'shallow', 'shameful', 'shameless', 'sharp', 'shimmering', 'shiny', 'shocked', 'shocking', 'shoddy', 'short', 'short-term', 'showy', 'shrill', 'shy', 'sick', 'silent', 'silky', 'silly', 'silver', 'similar', 'simple', 'simplistic', 'sinful', 'single', 'sizzling', 'skeletal', 'skinny', 'sleepy', 'slight', 'slim', 'slimy', 'slippery', 'slow', 'slushy', 'small', 'smart', 'smoggy', 'smooth', 'smug', 'snappy', 'snarling', 'sneaky', 'sniveling', 'snoopy', 'sociable', 'soft', 'soggy', 'solid', 'somber', 'some', 'spherical', 'sophisticated', 'sore', 'sorrowful', 'soulful', 'soupy', 'sour', 'Spanish', 'sparkling', 'sparse', 'specific', 'spectacular', 'speedy', 'spicy', 'spiffy', 'spirited', 'spiteful', 'splendid', 'spotless', 'spotted', 'spry', 'square', 'squeaky', 'squiggly', 'stable', 'staid', 'stained', 'stale', 'standard', 'starchy', 'stark', 'starry', 'steep', 'sticky', 'stiff', 'stimulating', 'stingy', 'stormy', 'straight', 'strange', 'steel', 'strict', 'strident', 'striking', 'striped', 'strong', 'studious', 'stunning', 'stupendous', 'stupid', 'sturdy', 'stylish', 'subdued', 'submissive', 'substantial', 'subtle', 'suburban', 'sudden', 'sugary', 'sunny', 'super', 'superb', 'superficial', 'superior', 'supportive', 'sure-footed', 'surprised', 'suspicious', 'svelte', 'sweaty', 'sweet', 'sweltering', 'swift', 'sympathetic', 'tall', 'talkative', 'tame', 'tan', 'tangible', 'tart', 'tasty', 'tattered', 'taut', 'tedious', 'teeming', 'tempting', 'tender', 'tense', 'tepid', 'terrible', 'terrific', 'testy', 'thankful', 'that', 'these', 'thick', 'thin', 'third', 'thirsty', 'this', 'thorough', 'thorny', 'those', 'thoughtful', 'threadbare', 'thrifty', 'thunderous', 'tidy', 'tight', 'timely', 'tinted', 'tiny', 'tired', 'torn', 'total', 'tough', 'traumatic', 'treasured', 'tremendous', 'tragic', 'trained', 'tremendous', 'triangular', 'tricky', 'trifling', 'trim', 'trivial', 'troubled', 'true', 'trusting', 'trustworthy', 'trusty', 'truthful', 'tubby', 'turbulent', 'twin', 'ugly', 'ultimate', 'unacceptable', 'unaware', 'uncomfortable', 'uncommon', 'unconscious', 'understated', 'unequaled', 'uneven', 'unfinished', 'unfit', 'unfolded', 'unfortunate', 'unhappy', 'unhealthy', 'uniform', 'unimportant', 'unique', 'united', 'unkempt', 'unknown', 'unlawful', 'unlined', 'unlucky', 'unnatural', 'unpleasant', 'unrealistic', 'unripe', 'unruly', 'unselfish', 'unsightly', 'unsteady', 'unsung', 'untidy', 'untimely', 'untried', 'untrue', 'unused', 'unusual', 'unwelcome', 'unwieldy', 'unwilling', 'unwitting', 'unwritten', 'upbeat', 'upright', 'upset', 'urban', 'usable', 'used', 'useful', 'useless', 'utilized', 'utter', 'vacant', 'vague', 'vain', 'valid', 'valuable', 'vapid', 'variable', 'vast', 'velvety', 'venerated', 'vengeful', 'verifiable', 'vibrant', 'vicious', 'victorious', 'vigilant', 'vigorous', 'villainous', 'violet', 'violent', 'virtual', 'virtuous', 'visible', 'vital', 'vivacious', 'vivid', 'voluminous', 'wan', 'warlike', 'warm', 'warmhearted', 'warped', 'wary', 'wasteful', 'watchful', 'waterlogged', 'watery', 'wavy', 'wealthy', 'weak', 'weary', 'webbed', 'wee', 'weekly', 'weepy', 'weighty', 'weird', 'welcome', 'well-documented', 'well-groomed', 'well-informed', 'well-lit', 'well-made', 'well-off', 'well-to-do', 'well-worn', 'wet', 'which', 'whimsical', 'whirlwind', 'whispered', 'white', 'whole', 'whopping', 'wicked', 'wide', 'wide-eyed', 'wiggly', 'wild', 'willing', 'wilted', 'winding', 'windy', 'winged', 'wiry', 'wise', 'witty', 'wobbly', 'woeful', 'wonderful', 'wooden', 'woozy', 'wordy', 'worldly', 'worn', 'worried', 'worrisome', 'worse', 'worst', 'worthless', 'worthwhile', 'worthy', 'wrathful', 'wretched', 'writhing', 'wrong', 'wry', 'yawning', 'yearly', 'yellow', 'yellowish', 'young', 'youthful', 'yummy', 'zany', 'zealous', 'zesty', 'zigzag'] +postform = random.randrange(1, 4) +gender = random.randrange(1, 4) +if gender == 1: + gender = 'lgf' +elif gender == 2: + gender = 'lbf' +elif gender == 3: + gender = 'elf' +verb = random.choice(verbs) +if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: + verb = verb[:-2] +if verb[-1] in ['a', 'i', 'o', 'u']: + verb = verb + 'es' +elif verb[-1] in ['s', 'x'] or verb[-2] == ['s', 'x'] or verb[-2:] == 'ch': + verb = verb + 'es' +elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: + verb = verb[:-1] + 'ies' +else: + verb = verb + 's' +adjective = random.choice(adjectives) +if postform == 1: + content = adjective + ' ' + gender + ' who ' + verb +elif postform == 2: + content = adjective + ' ' + gender +elif postform == 3: + content = gender + ' who ' + verb +print(content) +mastodon.status_post(content, visibility='unlisted') \ No newline at end of file -- 2.39.2 From cd9714f22289887b35a9291037f128df357028c5 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 16 Jan 2023 00:23:32 -0800 Subject: [PATCH 09/12] add license --- LICENSE | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..7a3094a --- /dev/null +++ b/LICENSE @@ -0,0 +1,11 @@ +DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE +Version 2, December 2004 + +Copyright (C) 2004 Sam Hocevar + +Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. + +DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. -- 2.39.2 From 564a19f9c4ae1b1f79a5bf5029584a31f15209d5 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 16 Jan 2023 00:23:32 -0800 Subject: [PATCH 10/12] fixed issue in verb conjugation --- lgfbot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lgfbot.py b/lgfbot.py index 485821a..d2d2dcc 100644 --- a/lgfbot.py +++ b/lgfbot.py @@ -41,7 +41,7 @@ if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: verb = verb[:-2] if verb[-1] in ['a', 'i', 'o', 'u']: verb = verb + 'es' -elif verb[-1] in ['s', 'x'] or verb[-2] == ['s', 'x'] or verb[-2:] == 'ch': +elif verb[-1] in ['s', 'x'] or verb[-2] in ['s', 'x'] or verb[-2:] == 'ch': verb = verb + 'es' elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: verb = verb[:-1] + 'ies' -- 2.39.2 From 179c9047336c264004451cf6f3b1a504875a2777 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 23 Jan 2023 12:34:02 -0800 Subject: [PATCH 11/12] Apply KayFaradays previous PRs --- .gitignore | 1 + adjectives.txt | 1347 ++++++++++++++++++++++++++++++++++++++++++++++++ lgfbot.py | 54 +- verbs.txt | 1040 +++++++++++++++++++++++++++++++++++++ 4 files changed, 2415 insertions(+), 27 deletions(-) create mode 100644 .gitignore create mode 100644 adjectives.txt create mode 100644 verbs.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eacac3a --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.lgfbot/ \ No newline at end of file diff --git a/adjectives.txt b/adjectives.txt new file mode 100644 index 0000000..a7ecef9 --- /dev/null +++ b/adjectives.txt @@ -0,0 +1,1347 @@ +abandoned +able +absolute +adorable +adventurous +academic +acceptable +acclaimed +accomplished +accurate +aching +acidic +acrobatic +active +actual +adept +admirable +admired +adolescent +adorable +adored +advanced +afraid +affectionate +aged +aggravating +aggressive +agile +agitated +agonizing +agreeable +ajar +alarmed +alarming +alert +alienated +alive +all +altruistic +amazing +ambitious +ample +amused +amusing +anchored +ancient +angelic +angry +anguished +animated +annual +another +antique +anxious +any +apprehensive +appropriate +apt +arctic +arid +aromatic +artistic +ashamed +assured +astonishing +athletic +attached +attentive +attractive +austere +authentic +authorized +automatic +avaricious +average +aware +awesome +awful +awkward +babyish +bad +back +baggy +bare +barren +basic +beautiful +belated +beloved +beneficial +better +best +bewitched +big +big-hearted +biodegradable +bite-sized +bitter +black +black-and-white +bland +blank +blaring +bleak +blind +blissful +blond +blue +blushing +bogus +boiling +bold +bony +boring +bossy +both +bouncy +bountiful +bowed +brave +breakable +brief +bright +brilliant +brisk +broken +bronze +brown +bruised +bubbly +bulky +bumpy +buoyant +burdensome +burly +bustling +busy +buttery +buzzing +calculating +calm +candid +canine +capital +carefree +careful +careless +caring +cautious +cavernous +celebrated +charming +cheap +cheerful +cheery +chief +chilly +chubby +circular +classic +clean +clear +clear-cut +clever +close +closed +cloudy +clueless +clumsy +cluttered +coarse +cold +colorful +colorless +colossal +comfortable +common +compassionate +competent +complete +complex +complicated +composed +concerned +concrete +confused +conscious +considerate +constant +content +conventional +cooked +cool +cooperative +coordinated +corny +corrupt +costly +courageous +courteous +crafty +crazy +creamy +creative +creepy +criminal +crisp +critical +crooked +crowded +cruel +crushing +cuddly +cultivated +cultured +cumbersome +curly +curvy +cute +cylindrical +damaged +damp +dangerous +dapper +daring +darling +dark +dazzling +dead +deadly +deafening +dear +dearest +decent +decimal +decisive +deep +defenseless +defensive +defiant +deficient +definite +definitive +delayed +delectable +delicious +delightful +delirious +demanding +dense +dental +dependable +dependent +descriptive +deserted +detailed +determined +devoted +different +difficult +digital +diligent +dim +dimpled +dimwitted +direct +disastrous +discrete +disfigured +disgusting +disloyal +dismal +distant +downright +dreary +dirty +disguised +dishonest +dismal +distant +distinct +distorted +dizzy +dopey +doting +double +downright +drab +drafty +dramatic +dreary +droopy +dry +dual +dull +dutiful +each +eager +earnest +early +easy +easy-going +ecstatic +edible +educated +elaborate +elastic +elated +elderly +electric +elegant +elementary +elliptical +embarrassed +embellished +eminent +emotional +empty +enchanted +enchanting +energetic +enlightened +enormous +enraged +entire +envious +equal +equatorial +essential +esteemed +ethical +euphoric +even +evergreen +everlasting +every +evil +exalted +excellent +exemplary +exhausted +excitable +excited +exciting +exotic +expensive +experienced +expert +extraneous +extroverted +extra-large +extra-small +fabulous +failing +faint +fair +faithful +fake +false +familiar +famous +fancy +fantastic +far +faraway +far-flung +far-off +fast +fat +fatal +fatherly +favorable +favorite +fearful +fearless +feisty +feline +female +feminine +few +fickle +filthy +fine +finished +firm +first +firsthand +fitting +fixed +flaky +flamboyant +flashy +flat +flawed +flawless +flickering +flimsy +flippant +flowery +fluffy +fluid +flustered +focused +fond +foolhardy +foolish +forceful +forked +formal +forsaken +forthright +fortunate +fragrant +frail +frank +frayed +free +French +fresh +frequent +friendly +frightened +frightening +frigid +frilly +frizzy +frivolous +front +frosty +frozen +frugal +fruitful +full +fumbling +functional +funny +fussy +fuzzy +gargantuan +gaseous +general +generous +gentle +genuine +giant +giddy +gigantic +gifted +giving +glamorous +glaring +glass +gleaming +gleeful +glistening +glittering +gloomy +glorious +glossy +glum +golden +good +good-natured +gorgeous +graceful +gracious +grand +grandiose +granular +grateful +grave +gray +great +greedy +green +gregarious +grim +grimy +gripping +grizzled +gross +grotesque +grouchy +grounded +growing +growling +grown +grubby +gruesome +grumpy +guilty +gullible +gummy +hairy +half +handmade +handsome +handy +happy +happy-go-lucky +hard +hard-to-find +harmful +harmless +harmonious +harsh +hasty +hateful +haunting +healthy +heartfelt +hearty +heavenly +heavy +hefty +helpful +helpless +hidden +hideous +high +high-level +hilarious +hoarse +hollow +homely +honest +honorable +honored +hopeful +horrible +hospitable +hot +huge +humble +humiliating +humming +humongous +hungry +hurtful +husky +icky +icy +ideal +idealistic +identical +idle +idiotic +idolized +ignorant +ill +illegal +ill-fated +ill-informed +illiterate +illustrious +imaginary +imaginative +immaculate +immaterial +immediate +immense +impassioned +impeccable +impartial +imperfect +imperturbable +impish +impolite +important +impossible +impractical +impressionable +impressive +improbable +impure +inborn +incomparable +incompatible +incomplete +inconsequential +incredible +indelible +inexperienced +indolent +infamous +infantile +infatuated +inferior +infinite +informal +innocent +insecure +insidious +insignificant +insistent +instructive +insubstantial +intelligent +intent +intentional +interesting +internal +international +intrepid +ironclad +irresponsible +irritating +itchy +jaded +jagged +jam-packed +jaunty +jealous +jittery +joint +jolly +jovial +joyful +joyous +jubilant +judicious +juicy +jumbo +junior +jumpy +juvenile +kaleidoscopic +keen +key +kind +kindhearted +kindly +klutzy +knobby +knotty +knowledgeable +knowing +known +kooky +kosher +lame +lanky +large +last +lasting +late +lavish +lawful +lazy +leading +lean +leafy +left +legal +legitimate +light +lighthearted +likable +likely +limited +limp +limping +linear +lined +liquid +little +live +lively +livid +loathsome +lone +lonely +long +long-term +loose +lopsided +lost +loud +lovable +lovely +loving +low +loyal +lucky +lumbering +luminous +lumpy +lustrous +luxurious +mad +made-up +magnificent +majestic +major +male +mammoth +married +marvelous +masculine +massive +mature +meager +mealy +mean +measly +meaty +medical +mediocre +medium +meek +mellow +melodic +memorable +menacing +merry +messy +metallic +mild +milky +mindless +miniature +minor +minty +miserable +miserly +misguided +misty +mixed +modern +modest +moist +monstrous +monthly +monumental +moral +mortified +motherly +motionless +mountainous +muddy +muffled +multicolored +mundane +murky +mushy +musty +muted +mysterious +naive +narrow +nasty +natural +naughty +nautical +near +neat +necessary +needy +negative +neglected +negligible +neighboring +nervous +new +next +nice +nifty +nimble +nippy +nocturnal +noisy +nonstop +normal +notable +noted +noteworthy +novel +noxious +numb +nutritious +nutty +obedient +obese +oblong +oily +oblong +obvious +occasional +odd +oddball +offbeat +offensive +official +old +old-fashioned +only +open +optimal +optimistic +opulent +orange +orderly +organic +ornate +ornery +ordinary +original +other +our +outlying +outgoing +outlandish +outrageous +outstanding +oval +overcooked +overdue +overjoyed +overlooked +palatable +pale +paltry +parallel +parched +partial +passionate +past +pastel +peaceful +peppery +perfect +perfumed +periodic +perky +personal +pertinent +pesky +pessimistic +petty +phony +physical +piercing +pink +pitiful +plain +plaintive +plastic +playful +pleasant +pleased +pleasing +plump +plush +polished +polite +political +pointed +pointless +poised +poor +popular +portly +posh +positive +possible +potable +powerful +powerless +practical +precious +present +prestigious +pretty +precious +previous +pricey +prickly +primary +prime +pristine +private +prize +probable +productive +profitable +profuse +proper +proud +prudent +punctual +pungent +puny +pure +purple +pushy +putrid +puzzled +puzzling +quaint +qualified +quarrelsome +quarterly +queasy +querulous +questionable +quick +quick-witted +quiet +quintessential +quirky +quixotic +quizzical +radiant +ragged +rapid +rare +rash +raw +recent +reckless +rectangular +ready +real +realistic +reasonable +red +reflecting +regal +regular +reliable +relieved +remarkable +remorseful +remote +repentant +required +respectful +responsible +repulsive +revolving +rewarding +rich +rigid +right +ringed +ripe +roasted +robust +rosy +rotating +rotten +rough +round +rowdy +royal +rubbery +rundown +ruddy +rude +runny +rural +rusty +sad +safe +salty +same +sandy +sane +sarcastic +sardonic +satisfied +scaly +scarce +scared +scary +scented +scholarly +scientific +scornful +scratchy +scrawny +second +secondary +second-hand +secret +self-assured +self-reliant +selfish +sentimental +separate +serene +serious +serpentine +several +severe +shabby +shadowy +shady +shallow +shameful +shameless +sharp +shimmering +shiny +shocked +shocking +shoddy +short +short-term +showy +shrill +shy +sick +silent +silky +silly +silver +similar +simple +simplistic +sinful +single +sizzling +skeletal +skinny +sleepy +slight +slim +slimy +slippery +slow +slushy +small +smart +smoggy +smooth +smug +snappy +snarling +sneaky +sniveling +snoopy +sociable +soft +soggy +solid +somber +some +spherical +sophisticated +sore +sorrowful +soulful +soupy +sour +Spanish +sparkling +sparse +specific +spectacular +speedy +spicy +spiffy +spirited +spiteful +splendid +spotless +spotted +spry +square +squeaky +squiggly +stable +staid +stained +stale +standard +starchy +stark +starry +steep +sticky +stiff +stimulating +stingy +stormy +straight +strange +steel +strict +strident +striking +striped +strong +studious +stunning +stupendous +stupid +sturdy +stylish +subdued +submissive +substantial +subtle +suburban +sudden +sugary +sunny +super +superb +superficial +superior +supportive +sure-footed +surprised +suspicious +svelte +sweaty +sweet +sweltering +swift +sympathetic +tall +talkative +tame +tan +tangible +tart +tasty +tattered +taut +tedious +teeming +tempting +tender +tense +tepid +terrible +terrific +testy +thankful +that +these +thick +thin +third +thirsty +this +thorough +thorny +those +thoughtful +threadbare +thrifty +thunderous +tidy +tight +timely +tinted +tiny +tired +torn +total +tough +traumatic +treasured +tremendous +tragic +trained +tremendous +triangular +tricky +trifling +trim +trivial +troubled +true +trusting +trustworthy +trusty +truthful +tubby +turbulent +twin +ugly +ultimate +unacceptable +unaware +uncomfortable +uncommon +unconscious +understated +unequaled +uneven +unfinished +unfit +unfolded +unfortunate +unhappy +unhealthy +uniform +unimportant +unique +united +unkempt +unknown +unlawful +unlined +unlucky +unnatural +unpleasant +unrealistic +unripe +unruly +unselfish +unsightly +unsteady +unsung +untidy +untimely +untried +untrue +unused +unusual +unwelcome +unwieldy +unwilling +unwitting +unwritten +upbeat +upright +upset +urban +usable +used +useful +useless +utilized +utter +vacant +vague +vain +valid +valuable +vapid +variable +vast +velvety +venerated +vengeful +verifiable +vibrant +vicious +victorious +vigilant +vigorous +villainous +violet +violent +virtual +virtuous +visible +vital +vivacious +vivid +voluminous +wan +warlike +warm +warmhearted +warped +wary +wasteful +watchful +waterlogged +watery +wavy +wealthy +weak +weary +webbed +wee +weekly +weepy +weighty +weird +welcome +well-documented +well-groomed +well-informed +well-lit +well-made +well-off +well-to-do +well-worn +wet +which +whimsical +whirlwind +whispered +white +whole +whopping +wicked +wide +wide-eyed +wiggly +wild +willing +wilted +winding +windy +winged +wiry +wise +witty +wobbly +woeful +wonderful +wooden +woozy +wordy +worldly +worn +worried +worrisome +worse +worst +worthless +worthwhile +worthy +wrathful +wretched +writhing +wrong +wry +yawning +yearly +yellow +yellowish +young +youthful +yummy +zany +zealous +zesty +zigzag diff --git a/lgfbot.py b/lgfbot.py index d2d2dcc..8630085 100644 --- a/lgfbot.py +++ b/lgfbot.py @@ -1,13 +1,16 @@ +#!/usr/bin/env python + import random +from getpass import getpass from mastodon import Mastodon import os -if os.path.exists('./.lgfbot/') == False: +if not os.path.exists('./.lgfbot/'): os.mkdir('./.lgfbot') -if os.path.exists('./.lgfbot/lgf_client.secret') == False: +if not os.path.exists('./.lgfbot/lgf_client.secret'): instance = input('Please enter your instance: ') - if not instance[:4] == 'http': + if instance[:4] != 'http': instance = 'https://' + instance Mastodon.create_app('Hourly lgf', api_base_url = instance, to_file = './.lgfbot/lgf_client.secret') @@ -15,10 +18,10 @@ mastodon = Mastodon( client_id = './.lgfbot/lgf_client.secret', ) -if os.path.exists('./.lgfbot/lgf_user.secret') == False: +if not os.path.exists('./.lgfbot/lgf_user.secret'): print('To post, lgfbot needs to generate an access token') username = input('Enter your username: ') - password = input('Enter your password: ') + password = getpass('Enter your password: ') mastodon.log_in(username=username, password=password, scopes=['write:statuses'], to_file='./.lgfbot/lgf_user.secret') @@ -26,33 +29,30 @@ mastodon = Mastodon( access_token = './.lgfbot/lgf_user.secret' ) -verbs = ['abide', 'accelerate', 'accept', 'accomplish', 'achieve', 'acquire', 'acted', 'activate', 'adapt', 'add', 'address', 'administer', 'admire', 'admit', 'adopt', 'advise', 'afford', 'agree', 'alert', 'alight', 'allow', 'altered', 'amuse', 'analyze', 'announce', 'annoy', 'answer', 'anticipate', 'apologize', 'appear', 'applaud', 'applied', 'appoint', 'appraise', 'appreciate', 'approve', 'arbitrate', 'argue', 'arise', 'arrange', 'arrest', 'arrive', 'ascertain', 'ask', 'assemble', 'assess', 'assist', 'assure', 'attach', 'attack', 'attain', 'attempt', 'attend', 'attract', 'audited', 'avoid', 'awake', 'back', 'bake', 'balance', 'ban', 'bang', 'bare', 'bat', 'bathe', 'battle', 'beam', 'bear', 'beat', 'beg', 'begin', 'behave', 'behold', 'belong', 'bend', 'beset', 'bet', 'bid', 'bind', 'bite', 'bleach', 'bleed', 'bless', 'blind', 'blink', 'blot', 'blow', 'blush', 'boast', 'boil', 'bolt', 'bomb', 'book', 'bore', 'borrow', 'bounce', 'bow', 'box', 'brake', 'branch', 'break', 'breathe', 'breed', 'brief', 'bring', 'broadcast', 'bruise', 'brush', 'bubble', 'budget', 'build', 'bump', 'burn', 'burst', 'bury', 'bust', 'buy', 'buze', 'calculate', 'call', 'camp', 'care', 'carry', 'carve', 'cast', 'catalog', 'catch', 'cause', 'challenge', 'change', 'charge', 'chart', 'chase', 'cheat', 'check', 'cheer', 'chew', 'choke', 'choose', 'chop', 'claim', 'clap', 'clarify', 'classify', 'clean', 'clear', 'cling', 'clip', 'close', 'clothe', 'coach', 'coil', 'collect', 'color', 'comb', 'come', 'command', 'communicate', 'compare', 'compete', 'compile', 'complain', 'complete', 'compose', 'compute', 'conceive', 'concentrate', 'conceptualize', 'concern', 'conclude', 'conduct', 'confess', 'confront', 'confuse', 'connect', 'conserve', 'consider', 'consist', 'consolidate', 'construct', 'consult', 'contain', 'continue', 'contract', 'control', 'convert', 'coordinate', 'copy', 'correct', 'correlate', 'cost', 'cough', 'counsel', 'count', 'cover', 'crack', 'crash', 'crawl', 'create', 'creep', 'critique', 'cross', 'crush', 'cry', 'cure', 'curl', 'curve', 'cut', 'cycle', 'dam', 'damage', 'dance', 'dare', 'deal', 'decay', 'deceive', 'decide', 'decorate', 'define', 'delay', 'delegate', 'delight', 'deliver', 'demonstrate', 'depend', 'describe', 'desert', 'deserve', 'design', 'destroy', 'detail', 'detect', 'determine', 'develop', 'devise', 'diagnose', 'dig', 'direct', 'disagree', 'disappear', 'disapprove', 'disarm', 'discover', 'dislike', 'dispense', 'display', 'disprove', 'dissect', 'distribute', 'dive', 'divert', 'divide', 'do', 'double', 'doubt', 'draft', 'drag', 'drain', 'dramatize', 'draw', 'dream', 'dress', 'drink', 'drip', 'drive', 'drop', 'drown', 'drum', 'dry', 'dust', 'dwell', 'earn', 'eat', 'edited', 'educate', 'eliminate', 'embarrass', 'employ', 'empty', 'enacted', 'encourage', 'end', 'endure', 'enforce', 'engineer', 'enhance', 'enjoy', 'enlist', 'ensure', 'enter', 'entertain', 'escape', 'establish', 'estimate', 'evaluate', 'examine', 'exceed', 'excite', 'excuse', 'execute', 'exercise', 'exhibit', 'exist', 'expand', 'expect', 'expedite', 'experiment', 'explain', 'explode', 'express', 'extend', 'extract', 'face', 'facilitate', 'fade', 'fail', 'fancy', 'fasten', 'fax', 'fear', 'feed', 'feel', 'fence', 'fetch', 'fight', 'file', 'fill', 'film', 'finalize', 'finance', 'find', 'fire', 'fit', 'fix', 'flap', 'flash', 'flee', 'fling', 'float', 'flood', 'flow', 'flower', 'fly', 'fold', 'follow', 'fool', 'forbid', 'force', 'forecast', 'forego', 'foresee', 'foretell', 'forget', 'forgive', 'form', 'formulate', 'forsake', 'frame', 'freeze', 'frighten', 'fry', 'gather', 'gaze', 'generate', 'get', 'give', 'glow', 'glue', 'go', 'govern', 'grab', 'graduate', 'grate', 'grease', 'greet', 'grin', 'grind', 'grip', 'groan', 'grow', 'guarantee', 'guard', 'guess', 'guide', 'hammer', 'hand', 'handle', 'handwrite', 'hang', 'happen', 'harass', 'harm', 'hate', 'haunt', 'head', 'heal', 'heap', 'hear', 'heat', 'help', 'hide', 'hit', 'hold', 'hook', 'hop', 'hope', 'hover', 'hug', 'hum', 'hunt', 'hurry', 'hurt', 'hypothesize', 'identify', 'ignore', 'illustrate', 'imagine', 'implement', 'impress', 'improve', 'improvise', 'include', 'increase', 'induce', 'influence', 'inform', 'initiate', 'inject', 'injure', 'inlay', 'innovate', 'input', 'inspect', 'inspire', 'install', 'institute', 'instruct', 'insure', 'integrate', 'intend', 'intensify', 'interest', 'interfere', 'interlay', 'interpret', 'interrupt', 'interview', 'introduce', 'invent', 'inventory', 'investigate', 'invite', 'irritate', 'itch', 'jail', 'jam', 'jog', 'join', 'joke', 'judge', 'juggle', 'jump', 'justify', 'keep', 'kept', 'kick', 'kill', 'kiss', 'kneel', 'knit', 'knock', 'knot', 'know', 'label', 'land', 'last', 'laugh', 'launch', 'lay', 'lead', 'lean', 'leap', 'learn', 'leave', 'lecture', 'led', 'lend', 'let', 'level', 'license', 'lick', 'lie', 'lifted', 'light', 'lighten', 'like', 'list', 'listen', 'live', 'load', 'locate', 'lock', 'log', 'long', 'look', 'lose', 'love', 'maintain', 'make', 'man', 'manage', 'manipulate', 'manufacture', 'map', 'march', 'mark', 'market', 'marry', 'match', 'mate', 'matter', 'mean', 'measure', 'meddle', 'mediate', 'meet', 'melt', 'melt', 'memorize', 'mend', 'mentor', 'milk', 'mine', 'mislead', 'miss', 'misspell', 'mistake', 'misunderstand', 'mix', 'moan', 'model', 'modify', 'monitor', 'moor', 'motivate', 'mourn', 'move', 'mow', 'muddle', 'mug', 'multiply', 'murder', 'nail', 'name', 'navigate', 'need', 'negotiate', 'nest', 'nod', 'nominate', 'normalize', 'note', 'notice', 'number', 'obey', 'object', 'observe', 'obtain', 'occur', 'offend', 'offer', 'officiate', 'open', 'operate', 'order', 'organize', 'oriented', 'originate', 'overcome', 'overdo', 'overdraw', 'overflow', 'overhear', 'overtake', 'overthrow', 'owe', 'own', 'pack', 'paddle', 'paint', 'park', 'part', 'participate', 'pass', 'paste', 'pat', 'pause', 'pay', 'peck', 'pedal', 'peel', 'peep', 'perceive', 'perfect', 'perform', 'permit', 'persuade', 'phone', 'photograph', 'pick', 'pilot', 'pinch', 'pine', 'pinpoint', 'pioneer', 'place', 'plan', 'plant', 'play', 'plead', 'please', 'plug', 'point', 'poke', 'polish', 'pop', 'possess', 'post', 'pour', 'practice', 'praised', 'pray', 'preach', 'precede', 'predict', 'prefer', 'prepare', 'prescribe', 'present', 'preserve', 'preset', 'preside', 'press', 'pretend', 'prevent', 'prick', 'print', 'process', 'procure', 'produce', 'profess', 'program', 'progress', 'project', 'promise', 'promote', 'proofread', 'propose', 'protect', 'prove', 'provide', 'publicize', 'pull', 'pump', 'punch', 'puncture', 'punish', 'purchase', 'push', 'put', 'qualify', 'question', 'queue', 'quit', 'race', 'radiate', 'rain', 'raise', 'rank', 'rate', 'reach', 'read', 'realign', 'realize', 'reason', 'receive', 'recognize', 'recommend', 'reconcile', 'record', 'recruit', 'reduce', 'refer', 'reflect', 'refuse', 'regret', 'regulate', 'rehabilitate', 'reign', 'reinforce', 'reject', 'rejoice', 'relate', 'relax', 'release', 'rely', 'remain', 'remember', 'remind', 'remove', 'render', 'reorganize', 'repair', 'repeat', 'replace', 'reply', 'report', 'represent', 'reproduce', 'request', 'rescue', 'research', 'resolve', 'respond', 'restored', 'restructure', 'retire', 'retrieve', 'return', 'review', 'revise', 'rhyme', 'rid', 'ride', 'ring', 'rinse', 'rise', 'risk', 'rob', 'rock', 'roll', 'rot', 'rub', 'ruin', 'rule', 'run', 'rush', 'sack', 'sail', 'satisfy', 'save', 'saw', 'say', 'scare', 'scatter', 'schedule', 'scold', 'scorch', 'scrape', 'scratch', 'scream', 'screw', 'scribble', 'scrub', 'seal', 'search', 'secure', 'see', 'seek', 'select', 'sell', 'send', 'sense', 'separate', 'serve', 'service', 'set', 'settle', 'sew', 'shade', 'shake', 'shape', 'share', 'shave', 'shear', 'shed', 'shelter', 'shine', 'shiver', 'shock', 'shoe', 'shoot', 'shop', 'show', 'shrink', 'shrug', 'shut', 'sigh', 'sign', 'signal', 'simplify', 'sin', 'sing', 'sink', 'sip', 'sit', 'sketch', 'ski', 'skip', 'slap', 'slay', 'sleep', 'slide', 'sling', 'slink', 'slip', 'slit', 'slow', 'smash', 'smell', 'smile', 'smite', 'smoke', 'snatch', 'sneak', 'sneeze', 'sniff', 'snore', 'snow', 'soak', 'solve', 'soothe', 'soothsay', 'sort', 'sound', 'sow', 'spare', 'spark', 'sparkle', 'speak', 'specify', 'speed', 'spell', 'spend', 'spill', 'spin', 'spit', 'split', 'spoil', 'spot', 'spray', 'spread', 'spring', 'sprout', 'squash', 'squeak', 'squeal', 'squeeze', 'stain', 'stamp', 'stand', 'stare', 'start', 'stay', 'steal', 'steer', 'step', 'stick', 'stimulate', 'sting', 'stink', 'stir', 'stitch', 'stop', 'store', 'strap', 'streamline', 'strengthen', 'stretch', 'stride', 'strike', 'string', 'strip', 'strive', 'stroke', 'structure', 'study', 'stuff', 'sublet', 'subtract', 'succeed', 'suck', 'suffer', 'suggest', 'suit', 'summarize', 'supervise', 'supply', 'support', 'suppose', 'surprise', 'surround', 'suspect', 'suspend', 'swear', 'sweat', 'sweep', 'swell', 'swim', 'swing', 'switch', 'symbolize', 'synthesize', 'systemize', 'tabulate', 'take', 'talk', 'tame', 'tap', 'target', 'taste', 'teach', 'tear', 'tease', 'telephone', 'tell', 'tempt', 'terrify', 'test', 'thank', 'thaw', 'think', 'thrive', 'throw', 'thrust', 'tick', 'tickle', 'tie', 'time', 'tip', 'tire', 'touch', 'tour', 'tow', 'trace', 'trade', 'train', 'transcribe', 'transfer', 'transform', 'translate', 'transport', 'trap', 'travel', 'tread', 'treat', 'tremble', 'trick', 'trip', 'trot', 'trouble', 'troubleshoot', 'trust', 'try', 'tug', 'tumble', 'turn', 'tutor', 'twist', 'type', 'undergo', 'understand', 'undertake', 'undress', 'unfasten', 'unify', 'unite', 'unlock', 'unpack', 'untidy', 'update', 'upgrade', 'uphold', 'upset', 'use', 'utilize', 'vanish', 'verbalize', 'verify', 'vex', 'visit', 'wail', 'wait', 'wake', 'walk', 'wander', 'want', 'warm', 'warn', 'wash', 'waste', 'watch', 'water', 'wave', 'wear', 'weave', 'wed', 'weep', 'weigh', 'welcome', 'wend', 'wet', 'whine', 'whip', 'whirl', 'whisper', 'whistle', 'win', 'wind', 'wink', 'wipe', 'wish', 'withdraw', 'withhold', 'withstand', 'wobble', 'wonder', 'work', 'worry', 'wrap', 'wreck', 'wrestle', 'wriggle', 'wring', 'write', 'x-ray', 'yawn', 'yell', 'zip', 'zoom'] -adjectives = ['abandoned', 'able', 'absolute', 'adorable', 'adventurous', 'academic', 'acceptable', 'acclaimed', 'accomplished', 'accurate', 'aching', 'acidic', 'acrobatic', 'active', 'actual', 'adept', 'admirable', 'admired', 'adolescent', 'adorable', 'adored', 'advanced', 'afraid', 'affectionate', 'aged', 'aggravating', 'aggressive', 'agile', 'agitated', 'agonizing', 'agreeable', 'ajar', 'alarmed', 'alarming', 'alert', 'alienated', 'alive', 'all', 'altruistic', 'amazing', 'ambitious', 'ample', 'amused', 'amusing', 'anchored', 'ancient', 'angelic', 'angry', 'anguished', 'animated', 'annual', 'another', 'antique', 'anxious', 'any', 'apprehensive', 'appropriate', 'apt', 'arctic', 'arid', 'aromatic', 'artistic', 'ashamed', 'assured', 'astonishing', 'athletic', 'attached', 'attentive', 'attractive', 'austere', 'authentic', 'authorized', 'automatic', 'avaricious', 'average', 'aware', 'awesome', 'awful', 'awkward', 'babyish', 'bad', 'back', 'baggy', 'bare', 'barren', 'basic', 'beautiful', 'belated', 'beloved', 'beneficial', 'better', 'best', 'bewitched', 'big', 'big-hearted', 'biodegradable', 'bite-sized', 'bitter', 'black', 'black-and-white', 'bland', 'blank', 'blaring', 'bleak', 'blind', 'blissful', 'blond', 'blue', 'blushing', 'bogus', 'boiling', 'bold', 'bony', 'boring', 'bossy', 'both', 'bouncy', 'bountiful', 'bowed', 'brave', 'breakable', 'brief', 'bright', 'brilliant', 'brisk', 'broken', 'bronze', 'brown', 'bruised', 'bubbly', 'bulky', 'bumpy', 'buoyant', 'burdensome', 'burly', 'bustling', 'busy', 'buttery', 'buzzing', 'calculating', 'calm', 'candid', 'canine', 'capital', 'carefree', 'careful', 'careless', 'caring', 'cautious', 'cavernous', 'celebrated', 'charming', 'cheap', 'cheerful', 'cheery', 'chief', 'chilly', 'chubby', 'circular', 'classic', 'clean', 'clear', 'clear-cut', 'clever', 'close', 'closed', 'cloudy', 'clueless', 'clumsy', 'cluttered', 'coarse', 'cold', 'colorful', 'colorless', 'colossal', 'comfortable', 'common', 'compassionate', 'competent', 'complete', 'complex', 'complicated', 'composed', 'concerned', 'concrete', 'confused', 'conscious', 'considerate', 'constant', 'content', 'conventional', 'cooked', 'cool', 'cooperative', 'coordinated', 'corny', 'corrupt', 'costly', 'courageous', 'courteous', 'crafty', 'crazy', 'creamy', 'creative', 'creepy', 'criminal', 'crisp', 'critical', 'crooked', 'crowded', 'cruel', 'crushing', 'cuddly', 'cultivated', 'cultured', 'cumbersome', 'curly', 'curvy', 'cute', 'cylindrical', 'damaged', 'damp', 'dangerous', 'dapper', 'daring', 'darling', 'dark', 'dazzling', 'dead', 'deadly', 'deafening', 'dear', 'dearest', 'decent', 'decimal', 'decisive', 'deep', 'defenseless', 'defensive', 'defiant', 'deficient', 'definite', 'definitive', 'delayed', 'delectable', 'delicious', 'delightful', 'delirious', 'demanding', 'dense', 'dental', 'dependable', 'dependent', 'descriptive', 'deserted', 'detailed', 'determined', 'devoted', 'different', 'difficult', 'digital', 'diligent', 'dim', 'dimpled', 'dimwitted', 'direct', 'disastrous', 'discrete', 'disfigured', 'disgusting', 'disloyal', 'dismal', 'distant', 'downright', 'dreary', 'dirty', 'disguised', 'dishonest', 'dismal', 'distant', 'distinct', 'distorted', 'dizzy', 'dopey', 'doting', 'double', 'downright', 'drab', 'drafty', 'dramatic', 'dreary', 'droopy', 'dry', 'dual', 'dull', 'dutiful', 'each', 'eager', 'earnest', 'early', 'easy', 'easy-going', 'ecstatic', 'edible', 'educated', 'elaborate', 'elastic', 'elated', 'elderly', 'electric', 'elegant', 'elementary', 'elliptical', 'embarrassed', 'embellished', 'eminent', 'emotional', 'empty', 'enchanted', 'enchanting', 'energetic', 'enlightened', 'enormous', 'enraged', 'entire', 'envious', 'equal', 'equatorial', 'essential', 'esteemed', 'ethical', 'euphoric', 'even', 'evergreen', 'everlasting', 'every', 'evil', 'exalted', 'excellent', 'exemplary', 'exhausted', 'excitable', 'excited', 'exciting', 'exotic', 'expensive', 'experienced', 'expert', 'extraneous', 'extroverted', 'extra-large', 'extra-small', 'fabulous', 'failing', 'faint', 'fair', 'faithful', 'fake', 'false', 'familiar', 'famous', 'fancy', 'fantastic', 'far', 'faraway', 'far-flung', 'far-off', 'fast', 'fat', 'fatal', 'fatherly', 'favorable', 'favorite', 'fearful', 'fearless', 'feisty', 'feline', 'female', 'feminine', 'few', 'fickle', 'filthy', 'fine', 'finished', 'firm', 'first', 'firsthand', 'fitting', 'fixed', 'flaky', 'flamboyant', 'flashy', 'flat', 'flawed', 'flawless', 'flickering', 'flimsy', 'flippant', 'flowery', 'fluffy', 'fluid', 'flustered', 'focused', 'fond', 'foolhardy', 'foolish', 'forceful', 'forked', 'formal', 'forsaken', 'forthright', 'fortunate', 'fragrant', 'frail', 'frank', 'frayed', 'free', 'French', 'fresh', 'frequent', 'friendly', 'frightened', 'frightening', 'frigid', 'frilly', 'frizzy', 'frivolous', 'front', 'frosty', 'frozen', 'frugal', 'fruitful', 'full', 'fumbling', 'functional', 'funny', 'fussy', 'fuzzy', 'gargantuan', 'gaseous', 'general', 'generous', 'gentle', 'genuine', 'giant', 'giddy', 'gigantic', 'gifted', 'giving', 'glamorous', 'glaring', 'glass', 'gleaming', 'gleeful', 'glistening', 'glittering', 'gloomy', 'glorious', 'glossy', 'glum', 'golden', 'good', 'good-natured', 'gorgeous', 'graceful', 'gracious', 'grand', 'grandiose', 'granular', 'grateful', 'grave', 'gray', 'great', 'greedy', 'green', 'gregarious', 'grim', 'grimy', 'gripping', 'grizzled', 'gross', 'grotesque', 'grouchy', 'grounded', 'growing', 'growling', 'grown', 'grubby', 'gruesome', 'grumpy', 'guilty', 'gullible', 'gummy', 'hairy', 'half', 'handmade', 'handsome', 'handy', 'happy', 'happy-go-lucky', 'hard', 'hard-to-find', 'harmful', 'harmless', 'harmonious', 'harsh', 'hasty', 'hateful', 'haunting', 'healthy', 'heartfelt', 'hearty', 'heavenly', 'heavy', 'hefty', 'helpful', 'helpless', 'hidden', 'hideous', 'high', 'high-level', 'hilarious', 'hoarse', 'hollow', 'homely', 'honest', 'honorable', 'honored', 'hopeful', 'horrible', 'hospitable', 'hot', 'huge', 'humble', 'humiliating', 'humming', 'humongous', 'hungry', 'hurtful', 'husky', 'icky', 'icy', 'ideal', 'idealistic', 'identical', 'idle', 'idiotic', 'idolized', 'ignorant', 'ill', 'illegal', 'ill-fated', 'ill-informed', 'illiterate', 'illustrious', 'imaginary', 'imaginative', 'immaculate', 'immaterial', 'immediate', 'immense', 'impassioned', 'impeccable', 'impartial', 'imperfect', 'imperturbable', 'impish', 'impolite', 'important', 'impossible', 'impractical', 'impressionable', 'impressive', 'improbable', 'impure', 'inborn', 'incomparable', 'incompatible', 'incomplete', 'inconsequential', 'incredible', 'indelible', 'inexperienced', 'indolent', 'infamous', 'infantile', 'infatuated', 'inferior', 'infinite', 'informal', 'innocent', 'insecure', 'insidious', 'insignificant', 'insistent', 'instructive', 'insubstantial', 'intelligent', 'intent', 'intentional', 'interesting', 'internal', 'international', 'intrepid', 'ironclad', 'irresponsible', 'irritating', 'itchy', 'jaded', 'jagged', 'jam-packed', 'jaunty', 'jealous', 'jittery', 'joint', 'jolly', 'jovial', 'joyful', 'joyous', 'jubilant', 'judicious', 'juicy', 'jumbo', 'junior', 'jumpy', 'juvenile', 'kaleidoscopic', 'keen', 'key', 'kind', 'kindhearted', 'kindly', 'klutzy', 'knobby', 'knotty', 'knowledgeable', 'knowing', 'known', 'kooky', 'kosher', 'lame', 'lanky', 'large', 'last', 'lasting', 'late', 'lavish', 'lawful', 'lazy', 'leading', 'lean', 'leafy', 'left', 'legal', 'legitimate', 'light', 'lighthearted', 'likable', 'likely', 'limited', 'limp', 'limping', 'linear', 'lined', 'liquid', 'little', 'live', 'lively', 'livid', 'loathsome', 'lone', 'lonely', 'long', 'long-term', 'loose', 'lopsided', 'lost', 'loud', 'lovable', 'lovely', 'loving', 'low', 'loyal', 'lucky', 'lumbering', 'luminous', 'lumpy', 'lustrous', 'luxurious', 'mad', 'made-up', 'magnificent', 'majestic', 'major', 'male', 'mammoth', 'married', 'marvelous', 'masculine', 'massive', 'mature', 'meager', 'mealy', 'mean', 'measly', 'meaty', 'medical', 'mediocre', 'medium', 'meek', 'mellow', 'melodic', 'memorable', 'menacing', 'merry', 'messy', 'metallic', 'mild', 'milky', 'mindless', 'miniature', 'minor', 'minty', 'miserable', 'miserly', 'misguided', 'misty', 'mixed', 'modern', 'modest', 'moist', 'monstrous', 'monthly', 'monumental', 'moral', 'mortified', 'motherly', 'motionless', 'mountainous', 'muddy', 'muffled', 'multicolored', 'mundane', 'murky', 'mushy', 'musty', 'muted', 'mysterious', 'naive', 'narrow', 'nasty', 'natural', 'naughty', 'nautical', 'near', 'neat', 'necessary', 'needy', 'negative', 'neglected', 'negligible', 'neighboring', 'nervous', 'new', 'next', 'nice', 'nifty', 'nimble', 'nippy', 'nocturnal', 'noisy', 'nonstop', 'normal', 'notable', 'noted', 'noteworthy', 'novel', 'noxious', 'numb', 'nutritious', 'nutty', 'obedient', 'obese', 'oblong', 'oily', 'oblong', 'obvious', 'occasional', 'odd', 'oddball', 'offbeat', 'offensive', 'official', 'old', 'old-fashioned', 'only', 'open', 'optimal', 'optimistic', 'opulent', 'orange', 'orderly', 'organic', 'ornate', 'ornery', 'ordinary', 'original', 'other', 'our', 'outlying', 'outgoing', 'outlandish', 'outrageous', 'outstanding', 'oval', 'overcooked', 'overdue', 'overjoyed', 'overlooked', 'palatable', 'pale', 'paltry', 'parallel', 'parched', 'partial', 'passionate', 'past', 'pastel', 'peaceful', 'peppery', 'perfect', 'perfumed', 'periodic', 'perky', 'personal', 'pertinent', 'pesky', 'pessimistic', 'petty', 'phony', 'physical', 'piercing', 'pink', 'pitiful', 'plain', 'plaintive', 'plastic', 'playful', 'pleasant', 'pleased', 'pleasing', 'plump', 'plush', 'polished', 'polite', 'political', 'pointed', 'pointless', 'poised', 'poor', 'popular', 'portly', 'posh', 'positive', 'possible', 'potable', 'powerful', 'powerless', 'practical', 'precious', 'present', 'prestigious', 'pretty', 'precious', 'previous', 'pricey', 'prickly', 'primary', 'prime', 'pristine', 'private', 'prize', 'probable', 'productive', 'profitable', 'profuse', 'proper', 'proud', 'prudent', 'punctual', 'pungent', 'puny', 'pure', 'purple', 'pushy', 'putrid', 'puzzled', 'puzzling', 'quaint', 'qualified', 'quarrelsome', 'quarterly', 'queasy', 'querulous', 'questionable', 'quick', 'quick-witted', 'quiet', 'quintessential', 'quirky', 'quixotic', 'quizzical', 'radiant', 'ragged', 'rapid', 'rare', 'rash', 'raw', 'recent', 'reckless', 'rectangular', 'ready', 'real', 'realistic', 'reasonable', 'red', 'reflecting', 'regal', 'regular', 'reliable', 'relieved', 'remarkable', 'remorseful', 'remote', 'repentant', 'required', 'respectful', 'responsible', 'repulsive', 'revolving', 'rewarding', 'rich', 'rigid', 'right', 'ringed', 'ripe', 'roasted', 'robust', 'rosy', 'rotating', 'rotten', 'rough', 'round', 'rowdy', 'royal', 'rubbery', 'rundown', 'ruddy', 'rude', 'runny', 'rural', 'rusty', 'sad', 'safe', 'salty', 'same', 'sandy', 'sane', 'sarcastic', 'sardonic', 'satisfied', 'scaly', 'scarce', 'scared', 'scary', 'scented', 'scholarly', 'scientific', 'scornful', 'scratchy', 'scrawny', 'second', 'secondary', 'second-hand', 'secret', 'self-assured', 'self-reliant', 'selfish', 'sentimental', 'separate', 'serene', 'serious', 'serpentine', 'several', 'severe', 'shabby', 'shadowy', 'shady', 'shallow', 'shameful', 'shameless', 'sharp', 'shimmering', 'shiny', 'shocked', 'shocking', 'shoddy', 'short', 'short-term', 'showy', 'shrill', 'shy', 'sick', 'silent', 'silky', 'silly', 'silver', 'similar', 'simple', 'simplistic', 'sinful', 'single', 'sizzling', 'skeletal', 'skinny', 'sleepy', 'slight', 'slim', 'slimy', 'slippery', 'slow', 'slushy', 'small', 'smart', 'smoggy', 'smooth', 'smug', 'snappy', 'snarling', 'sneaky', 'sniveling', 'snoopy', 'sociable', 'soft', 'soggy', 'solid', 'somber', 'some', 'spherical', 'sophisticated', 'sore', 'sorrowful', 'soulful', 'soupy', 'sour', 'Spanish', 'sparkling', 'sparse', 'specific', 'spectacular', 'speedy', 'spicy', 'spiffy', 'spirited', 'spiteful', 'splendid', 'spotless', 'spotted', 'spry', 'square', 'squeaky', 'squiggly', 'stable', 'staid', 'stained', 'stale', 'standard', 'starchy', 'stark', 'starry', 'steep', 'sticky', 'stiff', 'stimulating', 'stingy', 'stormy', 'straight', 'strange', 'steel', 'strict', 'strident', 'striking', 'striped', 'strong', 'studious', 'stunning', 'stupendous', 'stupid', 'sturdy', 'stylish', 'subdued', 'submissive', 'substantial', 'subtle', 'suburban', 'sudden', 'sugary', 'sunny', 'super', 'superb', 'superficial', 'superior', 'supportive', 'sure-footed', 'surprised', 'suspicious', 'svelte', 'sweaty', 'sweet', 'sweltering', 'swift', 'sympathetic', 'tall', 'talkative', 'tame', 'tan', 'tangible', 'tart', 'tasty', 'tattered', 'taut', 'tedious', 'teeming', 'tempting', 'tender', 'tense', 'tepid', 'terrible', 'terrific', 'testy', 'thankful', 'that', 'these', 'thick', 'thin', 'third', 'thirsty', 'this', 'thorough', 'thorny', 'those', 'thoughtful', 'threadbare', 'thrifty', 'thunderous', 'tidy', 'tight', 'timely', 'tinted', 'tiny', 'tired', 'torn', 'total', 'tough', 'traumatic', 'treasured', 'tremendous', 'tragic', 'trained', 'tremendous', 'triangular', 'tricky', 'trifling', 'trim', 'trivial', 'troubled', 'true', 'trusting', 'trustworthy', 'trusty', 'truthful', 'tubby', 'turbulent', 'twin', 'ugly', 'ultimate', 'unacceptable', 'unaware', 'uncomfortable', 'uncommon', 'unconscious', 'understated', 'unequaled', 'uneven', 'unfinished', 'unfit', 'unfolded', 'unfortunate', 'unhappy', 'unhealthy', 'uniform', 'unimportant', 'unique', 'united', 'unkempt', 'unknown', 'unlawful', 'unlined', 'unlucky', 'unnatural', 'unpleasant', 'unrealistic', 'unripe', 'unruly', 'unselfish', 'unsightly', 'unsteady', 'unsung', 'untidy', 'untimely', 'untried', 'untrue', 'unused', 'unusual', 'unwelcome', 'unwieldy', 'unwilling', 'unwitting', 'unwritten', 'upbeat', 'upright', 'upset', 'urban', 'usable', 'used', 'useful', 'useless', 'utilized', 'utter', 'vacant', 'vague', 'vain', 'valid', 'valuable', 'vapid', 'variable', 'vast', 'velvety', 'venerated', 'vengeful', 'verifiable', 'vibrant', 'vicious', 'victorious', 'vigilant', 'vigorous', 'villainous', 'violet', 'violent', 'virtual', 'virtuous', 'visible', 'vital', 'vivacious', 'vivid', 'voluminous', 'wan', 'warlike', 'warm', 'warmhearted', 'warped', 'wary', 'wasteful', 'watchful', 'waterlogged', 'watery', 'wavy', 'wealthy', 'weak', 'weary', 'webbed', 'wee', 'weekly', 'weepy', 'weighty', 'weird', 'welcome', 'well-documented', 'well-groomed', 'well-informed', 'well-lit', 'well-made', 'well-off', 'well-to-do', 'well-worn', 'wet', 'which', 'whimsical', 'whirlwind', 'whispered', 'white', 'whole', 'whopping', 'wicked', 'wide', 'wide-eyed', 'wiggly', 'wild', 'willing', 'wilted', 'winding', 'windy', 'winged', 'wiry', 'wise', 'witty', 'wobbly', 'woeful', 'wonderful', 'wooden', 'woozy', 'wordy', 'worldly', 'worn', 'worried', 'worrisome', 'worse', 'worst', 'worthless', 'worthwhile', 'worthy', 'wrathful', 'wretched', 'writhing', 'wrong', 'wry', 'yawning', 'yearly', 'yellow', 'yellowish', 'young', 'youthful', 'yummy', 'zany', 'zealous', 'zesty', 'zigzag'] -postform = random.randrange(1, 4) -gender = random.randrange(1, 4) -if gender == 1: - gender = 'lgf' -elif gender == 2: - gender = 'lbf' -elif gender == 3: - gender = 'elf' +with open('adjectives.txt') as f: + adjectives = list(map(str.rstrip, f)) + +with open('verbs.txt') as f: + verbs = list(map(str.rstrip, f)) + +postform = random.choice(( + '{adjective} {gender} who {verb}', + '{adjective} {gender}', + '{gender} who {verb}', +)) +gender = random.choice(('lgf', 'lbf', 'elf')) verb = random.choice(verbs) -if verb[-2:] == 'ed' and verb[-3] not in ['a', 'e', 'i', 'o', 'u']: - verb = verb[:-2] -if verb[-1] in ['a', 'i', 'o', 'u']: +if verb[-2:] == 'ed' and verb[-3] not in {'a', 'e', 'i', 'o', 'u'}: + verb = verb[:-2] +if verb[-1] in {'a', 'i', 'o', 'u'}: verb = verb + 'es' -elif verb[-1] in ['s', 'x'] or verb[-2] in ['s', 'x'] or verb[-2:] == 'ch': +elif verb[-1] in {'s', 'x'} or verb[-2] in {'s', 'x'} or verb[-2:] == 'ch': verb = verb + 'es' -elif verb[-1] == 'y' and verb[-2] not in ['a', 'e', 'i', 'o', 'u']: +elif verb[-1] == 'y' and verb[-2] not in {'a', 'e', 'i', 'o', 'u'}: verb = verb[:-1] + 'ies' else: verb = verb + 's' adjective = random.choice(adjectives) -if postform == 1: - content = adjective + ' ' + gender + ' who ' + verb -elif postform == 2: - content = adjective + ' ' + gender -elif postform == 3: - content = gender + ' who ' + verb +content = postform.format(adjective=adjective, gender=gender, verb=verb) print(content) -mastodon.status_post(content, visibility='unlisted') \ No newline at end of file +mastodon.status_post(content, visibility='unlisted') diff --git a/verbs.txt b/verbs.txt new file mode 100644 index 0000000..b3391c0 --- /dev/null +++ b/verbs.txt @@ -0,0 +1,1040 @@ +abide +accelerate +accept +accomplish +achieve +acquire +acted +activate +adapt +add +address +administer +admire +admit +adopt +advise +afford +agree +alert +alight +allow +altered +amuse +analyze +announce +annoy +answer +anticipate +apologize +appear +applaud +applied +appoint +appraise +appreciate +approve +arbitrate +argue +arise +arrange +arrest +arrive +ascertain +ask +assemble +assess +assist +assure +attach +attack +attain +attempt +attend +attract +audited +avoid +awake +back +bake +balance +ban +bang +bare +bat +bathe +battle +beam +bear +beat +beg +begin +behave +behold +belong +bend +beset +bet +bid +bind +bite +bleach +bleed +bless +blind +blink +blot +blow +blush +boast +boil +bolt +bomb +book +bore +borrow +bounce +bow +box +brake +branch +break +breathe +breed +brief +bring +broadcast +bruise +brush +bubble +budget +build +bump +burn +burst +bury +bust +buy +buze +calculate +call +camp +care +carry +carve +cast +catalog +catch +cause +challenge +change +charge +chart +chase +cheat +check +cheer +chew +choke +choose +chop +claim +clap +clarify +classify +clean +clear +cling +clip +close +clothe +coach +coil +collect +color +comb +come +command +communicate +compare +compete +compile +complain +complete +compose +compute +conceive +concentrate +conceptualize +concern +conclude +conduct +confess +confront +confuse +connect +conserve +consider +consist +consolidate +construct +consult +contain +continue +contract +control +convert +coordinate +copy +correct +correlate +cost +cough +counsel +count +cover +crack +crash +crawl +create +creep +critique +cross +crush +cry +cure +curl +curve +cut +cycle +dam +damage +dance +dare +deal +decay +deceive +decide +decorate +define +delay +delegate +delight +deliver +demonstrate +depend +describe +desert +deserve +design +destroy +detail +detect +determine +develop +devise +diagnose +dig +direct +disagree +disappear +disapprove +disarm +discover +dislike +dispense +display +disprove +dissect +distribute +dive +divert +divide +do +double +doubt +draft +drag +drain +dramatize +draw +dream +dress +drink +drip +drive +drop +drown +drum +dry +dust +dwell +earn +eat +edited +educate +eliminate +embarrass +employ +empty +enacted +encourage +end +endure +enforce +engineer +enhance +enjoy +enlist +ensure +enter +entertain +escape +establish +estimate +evaluate +examine +exceed +excite +excuse +execute +exercise +exhibit +exist +expand +expect +expedite +experiment +explain +explode +express +extend +extract +face +facilitate +fade +fail +fancy +fasten +fax +fear +feed +feel +fence +fetch +fight +file +fill +film +finalize +finance +find +fire +fit +fix +flap +flash +flee +fling +float +flood +flow +flower +fly +fold +follow +fool +forbid +force +forecast +forego +foresee +foretell +forget +forgive +form +formulate +forsake +frame +freeze +frighten +fry +gather +gaze +generate +get +give +glow +glue +go +govern +grab +graduate +grate +grease +greet +grin +grind +grip +groan +grow +guarantee +guard +guess +guide +hammer +hand +handle +handwrite +hang +happen +harass +harm +hate +haunt +head +heal +heap +hear +heat +help +hide +hit +hold +hook +hop +hope +hover +hug +hum +hunt +hurry +hurt +hypothesize +identify +ignore +illustrate +imagine +implement +impress +improve +improvise +include +increase +induce +influence +inform +initiate +inject +injure +inlay +innovate +input +inspect +inspire +install +institute +instruct +insure +integrate +intend +intensify +interest +interfere +interlay +interpret +interrupt +interview +introduce +invent +inventory +investigate +invite +irritate +itch +jail +jam +jog +join +joke +judge +juggle +jump +justify +keep +kept +kick +kill +kiss +kneel +knit +knock +knot +know +label +land +last +laugh +launch +lay +lead +lean +leap +learn +leave +lecture +led +lend +let +level +license +lick +lie +lifted +light +lighten +like +list +listen +live +load +locate +lock +log +long +look +lose +love +maintain +make +man +manage +manipulate +manufacture +map +march +mark +market +marry +match +mate +matter +mean +measure +meddle +mediate +meet +melt +melt +memorize +mend +mentor +milk +mine +mislead +miss +misspell +mistake +misunderstand +mix +moan +model +modify +monitor +moor +motivate +mourn +move +mow +muddle +mug +multiply +murder +nail +name +navigate +need +negotiate +nest +nod +nominate +normalize +note +notice +number +obey +object +observe +obtain +occur +offend +offer +officiate +open +operate +order +organize +oriented +originate +overcome +overdo +overdraw +overflow +overhear +overtake +overthrow +owe +own +pack +paddle +paint +park +part +participate +pass +paste +pat +pause +pay +peck +pedal +peel +peep +perceive +perfect +perform +permit +persuade +phone +photograph +pick +pilot +pinch +pine +pinpoint +pioneer +place +plan +plant +play +plead +please +plug +point +poke +polish +pop +possess +post +pour +practice +praised +pray +preach +precede +predict +prefer +prepare +prescribe +present +preserve +preset +preside +press +pretend +prevent +prick +print +process +procure +produce +profess +program +progress +project +promise +promote +proofread +propose +protect +prove +provide +publicize +pull +pump +punch +puncture +punish +purchase +push +put +qualify +question +queue +quit +race +radiate +rain +raise +rank +rate +reach +read +realign +realize +reason +receive +recognize +recommend +reconcile +record +recruit +reduce +refer +reflect +refuse +regret +regulate +rehabilitate +reign +reinforce +reject +rejoice +relate +relax +release +rely +remain +remember +remind +remove +render +reorganize +repair +repeat +replace +reply +report +represent +reproduce +request +rescue +research +resolve +respond +restored +restructure +retire +retrieve +return +review +revise +rhyme +rid +ride +ring +rinse +rise +risk +rob +rock +roll +rot +rub +ruin +rule +run +rush +sack +sail +satisfy +save +saw +say +scare +scatter +schedule +scold +scorch +scrape +scratch +scream +screw +scribble +scrub +seal +search +secure +see +seek +select +sell +send +sense +separate +serve +service +set +settle +sew +shade +shake +shape +share +shave +shear +shed +shelter +shine +shiver +shock +shoe +shoot +shop +show +shrink +shrug +shut +sigh +sign +signal +simplify +sin +sing +sink +sip +sit +sketch +ski +skip +slap +slay +sleep +slide +sling +slink +slip +slit +slow +smash +smell +smile +smite +smoke +snatch +sneak +sneeze +sniff +snore +snow +soak +solve +soothe +soothsay +sort +sound +sow +spare +spark +sparkle +speak +specify +speed +spell +spend +spill +spin +spit +split +spoil +spot +spray +spread +spring +sprout +squash +squeak +squeal +squeeze +stain +stamp +stand +stare +start +stay +steal +steer +step +stick +stimulate +sting +stink +stir +stitch +stop +store +strap +streamline +strengthen +stretch +stride +strike +string +strip +strive +stroke +structure +study +stuff +sublet +subtract +succeed +suck +suffer +suggest +suit +summarize +supervise +supply +support +suppose +surprise +surround +suspect +suspend +swear +sweat +sweep +swell +swim +swing +switch +symbolize +synthesize +systemize +tabulate +take +talk +tame +tap +target +taste +teach +tear +tease +telephone +tell +tempt +terrify +test +thank +thaw +think +thrive +throw +thrust +tick +tickle +tie +time +tip +tire +touch +tour +tow +trace +trade +train +transcribe +transfer +transform +translate +transport +trap +travel +tread +treat +tremble +trick +trip +trot +trouble +troubleshoot +trust +try +tug +tumble +turn +tutor +twist +type +undergo +understand +undertake +undress +unfasten +unify +unite +unlock +unpack +untidy +update +upgrade +uphold +upset +use +utilize +vanish +verbalize +verify +vex +visit +wail +wait +wake +walk +wander +want +warm +warn +wash +waste +watch +water +wave +wear +weave +wed +weep +weigh +welcome +wend +wet +whine +whip +whirl +whisper +whistle +win +wind +wink +wipe +wish +withdraw +withhold +withstand +wobble +wonder +work +worry +wrap +wreck +wrestle +wriggle +wring +write +x-ray +yawn +yell +zip +zoom -- 2.39.2 From 9d6d82bd2f2bb538e890e37c4d322ba17c745e13 Mon Sep 17 00:00:00 2001 From: Wardyn Date: Mon, 23 Jan 2023 12:53:41 -0800 Subject: [PATCH 12/12] Replace mastodon.py dependency with requests calls --- lgfbot.py | 72 +++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 49 insertions(+), 23 deletions(-) diff --git a/lgfbot.py b/lgfbot.py index 8630085..00033c0 100644 --- a/lgfbot.py +++ b/lgfbot.py @@ -1,33 +1,59 @@ #!/usr/bin/env python import random +import requests +import json from getpass import getpass -from mastodon import Mastodon import os +from urllib.parse import urlencode -if not os.path.exists('./.lgfbot/'): - os.mkdir('./.lgfbot') - -if not os.path.exists('./.lgfbot/lgf_client.secret'): - instance = input('Please enter your instance: ') - if instance[:4] != 'http': - instance = 'https://' + instance - Mastodon.create_app('Hourly lgf', api_base_url = instance, to_file = './.lgfbot/lgf_client.secret') - -mastodon = Mastodon( - client_id = './.lgfbot/lgf_client.secret', -) - -if not os.path.exists('./.lgfbot/lgf_user.secret'): - print('To post, lgfbot needs to generate an access token') - username = input('Enter your username: ') - password = getpass('Enter your password: ') - mastodon.log_in(username=username, password=password, scopes=['write:statuses'], to_file='./.lgfbot/lgf_user.secret') +#Ensure Credentials +parent = os.path.dirname(os.path.realpath(__file__)) +try: + os.mkdir(os.path.join(parent, '.creds')) +except FileExistsError: + pass -mastodon = Mastodon( - access_token = './.lgfbot/lgf_user.secret' -) +#Create app +try: + with open(os.path.join(parent, '.creds', 'client.secret'), "x") as clientcreds: + instance = input('Please enter your instance: ') + if not instance[:4] == 'http': + instance = 'https://' + instance + response = requests.post(instance + '/api/v1/apps', data={'client_name':'Hourly lgf','scopes':'write:statuses', 'redirect_uris':'urn:ietf:wg:oauth:2.0:oob'}) + response = response.json() + print(response) + clientcreds.write(response['client_id'] + "\n") + clientcreds.write(response['client_secret'] + "\n") + clientcreds.write(instance + "\n") +except FileExistsError: + pass + +#Fetch information from app credential file +with open(os.path.join(parent, '.creds', 'client.secret'), "r") as clientcreds: + lines = clientcreds.read().split('\n') + client_id = lines[0] + client_secret = lines[1] + instance = lines[2] + +#Log in to bot account +try: + with open(os.path.join(parent, '.creds', 'user.secret'), "x") as usercreds: + print(instance + '/oauth/authorize?', urlencode({'response_type':'code', 'client_id':client_id, 'redirect_uri':'urn:ietf:wg:oauth:2.0:oob', 'scope':'write:statuses'})) + code = input("To generate a token to access your account, lgfbot needs an authorization code. Please authorize using the link above and enter the code it provides you \nCode: ") + response = requests.post(instance + '/oauth/token', data={'grant_type':'authorization_code', 'code':code, 'client_id':client_id, 'client_secret':client_secret, 'redirect_uri':'urn:ietf:wg:oauth:2.0:oob', 'scope':'write:statuses'}) + usercreds.write(response.json()['access_token']) +except FileExistsError: + pass + +#Fetch information from user credential file +with open(os.path.join(parent, '.creds', 'user.secret'), "r") as usercreds: + lines = usercreds.read().split('\n') + token = lines[0] + +session = requests.Session() +session.headers.update({"Authorization" : "Bearer " + token}) with open('adjectives.txt') as f: adjectives = list(map(str.rstrip, f)) @@ -55,4 +81,4 @@ else: adjective = random.choice(adjectives) content = postform.format(adjective=adjective, gender=gender, verb=verb) print(content) -mastodon.status_post(content, visibility='unlisted') +session.post(instance + '/api/v1/statuses', data={'status':content, 'visibility':'direct'}) -- 2.39.2