Advertisement
Guest User

Untitled

a guest
Sep 11th, 2016
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.01 KB | None | 0 0
  1. from __future__ import print_function
  2. import praw
  3. import getpass
  4. import pprint
  5. import sys
  6. from time import sleep
  7.  
  8. #Adding Python 3 functionality thanks to Akuli!
  9. if sys.version_info[0] < 3:
  10.     input = raw_input
  11.  
  12. #Intro to what the program is & the login setup.
  13. print("[*] Welcome To Cryptics Reddit API.")
  14.  
  15. r = praw.Reddit(user_agent='Test Script By Cryptic')
  16.  
  17. Username = raw_input(">> Username: ")
  18. Password = getpass.getpass(prompt=(">> Password: "))
  19.  
  20. r.login(Username, Password)
  21.  
  22. while True:
  23.  
  24. #Making a menu for the user to select from.
  25.     print("[*] Successfully signed in, what would you like to do?")
  26.  
  27.     print("   1> Get saved posts.\n   2> Send a message.\n   3> Mark messages as read.\n   4> Get top posts for a subreddit.\n   5> Submit a post.\n   6> Submit URL post.\n   7> Get user karma.\n   8> Quit.")
  28.  
  29.     option = raw_input("[*] Please choose a number: ")
  30.  
  31. #Getting saved posts:
  32.     if option == "1":
  33.  
  34.         for saved in r.user.get_saved():
  35.             print(saved)
  36.         print("[*] That's all of your saved posts!")
  37.  
  38. #Sending a message:
  39.     elif option == "2":
  40.  
  41.         user = raw_input(">> User: ")
  42.         subject = raw_input(">> Subject: ")
  43.         message = raw_input(">> Message: ")
  44.  
  45.         r.send_message(user, subject, message)
  46.         sleep(1)
  47.         print("[*] Message sent.")
  48.  
  49. #Marking messages as read:
  50.     elif option == "3":
  51.  
  52.         print(">>Marking messages as read...")
  53.         sleep(1)
  54.         for msg in r.get_unread(limit=None):
  55.             msg.mark_as_read()
  56.         sleep(0.5)
  57.         print("[*] Messages successfully marked as read!")
  58.  
  59. #Getting top posts:
  60.     elif option == "4":
  61.  
  62.         subreddit = raw_input(">> Subreddit: ")
  63.         number = int(raw_input(">> Amount of posts: "))
  64.         submissions = r.get_subreddit(subreddit).get_top(limit=(number))
  65.         for item in submissions:
  66.             print(item)
  67.     print("[*] Posts successfully pulled.")
  68.  
  69. #Submitting a post:
  70.    elif option == "5":
  71.  
  72.        sub = raw_input(">> Subreddit: ")
  73.        title = raw_input(">> Title: ")
  74.        text = raw_input(">> Text: ")
  75.        r.submit(sub, title, text=(text))
  76.        print("[*] Successfully posted.")
  77.  
  78. #Submitting URL post:
  79.     elif option == "6":
  80.  
  81.         sub = raw_input(">> Subreddit: ")
  82.         title = raw_input(">> Title: ")
  83.         url = raw_input(">> URL: ")
  84.         r.submit(sub, title, url=(url))
  85.         print("[*] Successfully posted.")
  86.  
  87. #Getting user karma:
  88.     elif option == "7":
  89.  
  90.         username = raw_input(">> Enter user: ")
  91.         limit = int(raw_input(">> Enter limit: "))
  92.         user = r.get_redditor(username)
  93.         thing_limit =(limit)
  94.         gen = user.get_submitted(limit=thing_limit)
  95.         karma_by_subreddit = {}
  96.         for thing in gen:
  97.             subreddit = thing.subreddit.display_name
  98.             karma_by_subreddit[subreddit] = (karma_by_subreddit.get(subreddit, 0)+ thing.score)
  99.         pprint.pprint(karma_by_subreddit)
  100.  
  101. #For exiting the API:
  102.     elif option == "8":
  103.  
  104.         sys.exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement