Advertisement
Guest User

bot.py

a guest
Aug 15th, 2017
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.69 KB | None | 0 0
  1. from selenium import webdriver;
  2. from random import randint;
  3. import hashlib;
  4. import time;
  5. import codecs;
  6.  
  7. browser1 = None;
  8. browser2 = None;
  9.  
  10. female = [line.rstrip('\n') for line in codecs.open("female.txt", "r", "utf-8")];
  11. male = [line.rstrip('\n') for line in codecs.open("male.txt", "r", "utf-8")];
  12. surname = [line.rstrip('\n') for line in codecs.open("surname.txt", "r", "utf-8")];
  13. proxies = [];
  14.  
  15. action_time = 2;
  16. create_time = 5;
  17. implicit_wait_time = 20;
  18. avg_cooldown_time = 0; #min
  19. avg_cooldown_spread = 0; #min
  20.  
  21. vote_link = "http://www.anker.com/deals/anker_powers_up_competition/v/614892-don-t-let-others-overtake-you";
  22.  
  23.  
  24. def getProxies():
  25. browser3 = webdriver.Firefox();
  26. browser3.get("https://free-proxy-list.net/");
  27. ips = browser3.find_elements_by_css_selector('#proxylisttable tr td:nth-child(1)');
  28. ports = browser3.find_elements_by_css_selector('#proxylisttable tr td:nth-child(2)');
  29. i = 0;
  30. proxies = [];
  31. while i < len(ips):
  32. proxies.append(ips[i].text+'|'+ports[i].text);
  33. i += 1;
  34. browser3.close();
  35. return proxies;
  36.  
  37. proxies = getProxies();
  38. i = 0;
  39.  
  40. while 1:
  41. try:
  42. print '====================================================';
  43. if i > len(proxies):
  44. proxies = getProxies();
  45.  
  46.  
  47. #proxy setup
  48. proxy_string = proxies[i];
  49. proxy = proxy_string.split('|');
  50. profile = webdriver.FirefoxProfile() ;
  51. profile.set_preference("network.proxy.type", 1);
  52. profile.set_preference("network.proxy.http", proxy[0]);
  53. profile.set_preference("network.proxy.http_port", int(proxy[1]));
  54. profile.update_preferences();
  55. print 'Using proxy: ' + proxy[0] + ':' + proxy[1];
  56.  
  57. browser1 = webdriver.Firefox(firefox_profile=profile);
  58. browser2 = webdriver.Firefox(firefox_profile=profile);
  59.  
  60. browser1.implicitly_wait(implicit_wait_time);
  61. browser2.implicitly_wait(implicit_wait_time);
  62. browser1.get("https://dropmail.me");
  63. browser2.get("http://www.anker.com/register?back=%2Fdeals%2Fanker_powers_up_competition");
  64.  
  65. #get email address
  66. email = browser1.find_element_by_css_selector('h2 span.email');
  67. email = email.text;
  68. print 'Created email: ' + email;
  69.  
  70. #create account
  71. username = browser2.find_element_by_css_selector('input[name="email"]');
  72. password = browser2.find_element_by_css_selector('input[name="password"]');
  73. time.sleep(action_time);
  74. username.send_keys(email);
  75. password_text = hashlib.sha224(email).hexdigest()[:12];
  76. time.sleep(action_time);
  77. password.send_keys(password_text);
  78. time.sleep(create_time);
  79.  
  80. while 1:
  81. browser2.find_element_by_css_selector('.submit').click();
  82. time.sleep(create_time);
  83. curr_url = browser2.current_url;
  84. if "activation" in curr_url:
  85. break;
  86.  
  87. print 'Account created: ', email, '/', password_text;
  88. email_list = open("logs2.txt", "a");
  89. email_list.write(email+'|'+password_text+'|'+proxy[0]+'|'+proxy[1]+'\n');
  90. email_list.close();
  91. browser2.close();
  92.  
  93. #verify account
  94. time.sleep(create_time);
  95. confirm_link = browser1.find_element_by_partial_link_text('https://www.anker.com/');
  96. browser1.get(confirm_link.get_attribute("href"));
  97. gender = randint(0, 1);
  98. last_name = surname[randint(0, len(surname)-1)];
  99.  
  100. if gender == 0:
  101. first_name = female[randint(0, len(female)-1)];
  102. browser1.find_element_by_css_selector('select[name="gender"] option[value="female"]').click();
  103. else:
  104. first_name = male[randint(0, len(male)-1)];
  105. browser1.find_element_by_css_selector('select[name="gender"] option[value="male"]').click();
  106.  
  107. time.sleep(action_time);
  108. nick_name = browser1.find_element_by_css_selector('input[name="nick_name"]');
  109. nick_name.send_keys(first_name.capitalize() + ' ' + last_name.capitalize());
  110. time.sleep(action_time);
  111.  
  112. time.sleep(action_time);
  113. browser1.find_element_by_css_selector('button.submit').click();
  114. print 'Account validated';
  115.  
  116. #cast vote
  117. browser1.get(vote_link);
  118. browser1.find_element_by_css_selector('b.vote').click();
  119. i += 1;
  120. print 'Voted ', i;
  121.  
  122. cooldown = 0;
  123. print 'Cooldown: ' + str(cooldown) + 's';
  124.  
  125. browser1.close();
  126. time.sleep(cooldown);
  127. except Exception:
  128. i += 1;
  129. browser1.close();
  130. browser2.close();
  131. pass;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement