· 8 years ago · Nov 23, 2017, 11:16 PM
1#!/usr/bin/env python3
2
3import random
4import urllib.parse
5import urllib.request
6import time
7
8class EmailGenerator:
9 PROVIDERS = [ 'gmail.com', 'hotmail.com', 'outlook.com', 'yahoo.com', 'protonmail.com' ]
10 SEPARATORS = [ '.', '_', '' ]
11
12 def __init__(self, names):
13 self.names = names
14
15 def get_name(self):
16 return random.choice(self.names)
17
18 def get_email(self):
19 return '%s%s%s@%s' % (
20 self.get_name(),
21 random.choice(EmailGenerator.SEPARATORS),
22 self.get_name(),
23 random.choice(EmailGenerator.PROVIDERS))
24
25class Poster:
26 def __init__(self, url, number_field, email_field):
27 self.url = url
28 self.number_field = number_field
29 self.email_field = email_field
30
31 def do_POST(self, number, email):
32 data = {
33 self.number_field: number,
34 self.email_field: email,
35 'pageHistory': '0,1'
36 }
37 request = urllib.request.Request(self.url, urllib.parse.urlencode(data).encode())
38 return urllib.request.urlopen(request).read().decode()
39
40if __name__ == '__main__':
41 with open('names.txt', 'r') as f:
42 names = f.read().splitlines()
43
44 email_generator = EmailGenerator(names)
45 poster = Poster(
46 'https://docs.google.com/forms/d/e/1FAIpQLSceUQ2opcHpRK5Q8IgjHbpUTdc8htHMrLZdt_IbyZpxEXaD9Q/formResponse',
47 'entry.380477682',
48 'entry.1059641093')
49
50 numbers = list(range(56, 100 + 1))
51
52 while True:
53 random.shuffle(numbers)
54 for number in numbers:
55 print(poster.do_POST(number, email_generator.get_email()))
56 #time.sleep(1)