pixelhd

Login Or Sign Up for Reddit (PYTHON)

Jun 13th, 2016
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.17 KB | None | 0 0
  1. from selenium import webdriver
  2. from selenium.webdriver.common.keys import Keys
  3. import os
  4.  
  5. directory = os.path.dirname(__file__)
  6.  
  7. chromeDriver_path = "{}\chromedriver.exe".format(directory)
  8.  
  9. driver = webdriver.Chrome(chromeDriver_path)
  10.  
  11. driver.maximize_window()
  12.  
  13. driver.get("http://www.reddit.com/login")
  14.  
  15. user_choice = ""
  16.  
  17. while True:
  18.     try:
  19.         choice = raw_input("Do you want to login into Reddit or sign up?").lower()
  20.  
  21.         if choice == "login":
  22.             user_choice = "login"
  23.             break
  24.         elif choice == "sign up":
  25.             user_choice = "sign up"
  26.             break
  27.         else:
  28.             print "Uh oh! That's not a choice!"
  29.  
  30.     except Exception as exc:
  31.         print "Oops! Your input gave this error: {}".format(exc)
  32.         continue
  33.  
  34. try:
  35.     if user_choice == "login":
  36.         user = raw_input("Enter your username: ")
  37.  
  38.         user_field = driver.find_element_by_id("user_login")
  39.  
  40.         password = raw_input("Enter your password: ")
  41.  
  42.         password_field = driver.find_element_by_id("passwd_login")
  43.  
  44.         user_field.send_keys(user)
  45.         password_field.send_keys(password)
  46.  
  47.         while True:
  48.             try:
  49.                 remember_me = raw_input("Do you want to rememeber your login? [Y/N]").lower()
  50.  
  51.                 if remember_me in ("yes","y"):
  52.                     break
  53.                 elif remember_me in ("no","n"):
  54.                     break
  55.                 else:
  56.                     print "That's not an option!"
  57.             except Exception as exc:
  58.                 print "Oops! The following Exception was thrown: {}".format(exc)
  59.                 continue
  60.  
  61.         remember_field = driver.find_element_by_name("rem")
  62.  
  63.         if remember_me in ("yes","y"):
  64.             remember_field.click()
  65.         else:
  66.             pass
  67.  
  68.         password_field.send_keys(Keys.ENTER)
  69.  
  70.         print "Done"
  71.     if user_choice == "sign up":
  72.  
  73.         while True:
  74.             user = raw_input("Enter your desired username: ")
  75.             if len(user)  == 0:
  76.                 print "Length of username can't be 0!"
  77.             else:
  78.                 break
  79.  
  80.         user_field = driver.find_element_by_name("user")
  81.  
  82.         while True:
  83.             password = raw_input("Enter your desired password: ")
  84.  
  85.             if len(password) < 6:
  86.                 print "Password too short!"
  87.  
  88.             verify_password = raw_input("Verify your password: ")
  89.             if verify_password != password:
  90.                 print "Try again! The passwords don't match!"
  91.             if verify_password == password:
  92.                 break
  93.             else:
  94.                 pass
  95.         password_field = driver.find_element_by_name("passwd")
  96.  
  97.         verify_pwd_field = driver.find_element_by_name("passwd2")
  98.  
  99.         while True:
  100.             email = raw_input("Enter your email: ")
  101.             if len(email) == 0:
  102.                 print "Can't leave it blank."
  103.             else:
  104.                 break
  105.         email_field = driver.find_element_by_name("email")
  106.  
  107.         user_field.send_keys(user)
  108.         password_field.send_keys(password)
  109.         verify_pwd_field.send_keys(verify_password)
  110.         email_field.send_keys(email)
  111.  
  112.         while True:
  113.             choice = raw_input("Do you want to be remembered? [Y/N] ").lower()
  114.             if choice not in ("yes","no","y","n"):
  115.                 print "Type yes or no!"
  116.             else:
  117.                 break
  118.         if choice in ("yes","y"):
  119.             remember_field = driver.find_element_by_name("rem")
  120.             remember_field.click()
  121.  
  122.         while True:
  123.             newsletter_subscribe = raw_input("Get the best of reddit emailed to you once a week? [Y/N]").lower()
  124.             if newsletter_subscribe not in ("yes","y","no","n"):
  125.                 print "type yes or no!"
  126.             else:
  127.                 break
  128.         if newsletter_subscribe in ("yes","no"):
  129.             newsletter_field = driver.find_element_by_name("newsletter_subscribe")
  130.             newsletter_field.click()
  131.         else:
  132.             pass
  133.         email_field.send_keys(Keys.ENTER)
  134.  
  135.         print "Done!"
  136.        
  137. except Exception as exc:
  138.     print "Oops! Exception: {}".format(exc)
Add Comment
Please, Sign In to add comment