Advertisement
Guest User

bot.py

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