Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- import os
- import praw
- import time
- import pickle
- import random
- import string
- from config import *
- r = praw.Reddit(user_agent = USER_AGENT)
- r.login(USERNAME, PASSWORD)
- subreddit = r.get_subreddit(SUBREDDIT)
- submissions = list(subreddit.get_new())
- try:
- with open('done', 'r') as f:
- done = pickle.load(f)
- while len(done) > 50:
- del(done[0])
- except:
- done = []
- for submission in submissions:
- done.append(submission.id)
- for i in list(r.get_inbox()):
- if i.id not in done:
- done.append(i.id)
- with open('done', 'w') as f:
- pickle.dump(done, f)
- def Word(Title, inGroup):
- alphabet = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
- 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ']
- array = []
- for i in Title.lower():
- if i in [j.lower() for j in alphabet]:
- array.append(i)
- cleanedString = ''.join(array)
- titleAsList = cleanedString.split(' ')
- inGroup = [i.lower() for i in inGroup]
- for i in titleAsList:
- if i.lower() in inGroup:
- return True
- def main():
- submissions = list(subreddit.get_new())
- for submission in submissions:
- try:
- if submission.id not in done:
- done.append(submission.id)
- with open('done', 'w') as f:
- pickle.dump(done, f)
- if submission.is_self == True: #Set to False before going Live
- if Word(submission.title, RIPkitty) == True:
- break
- elif Word(submission.title, Fritz) == True:
- submission.add_comment(random.choice(FritzReply))
- elif Word(submission.title, Kuro) == True:
- submission.add_comment(random.choice(KuroReply))
- elif Word(submission.title, Spam) == True:
- submission.add_comment(random.choice(SpamReply))
- elif Word(submission.title, Felix) == True:
- submission.add_comment(random.choice(FelixReply))
- elif Word(submission.title, Xander) == True:
- submission.add_comment(random.choice(XanderReply))
- elif Word(submission.title, XX) == True:
- submission.add_comment(random.choice(XXReply))
- elif Word(submission.title, XY) == True:
- submission.add_comment(random.choice(XYReply))
- else:
- submission.add_comment(random.choice(default_replies))
- except Exception as e:
- log = "Sub Error: "+str(e)+" on "+submission.title+" "+submission.id+" @ "+str(time.time())+"\n"
- with open("errorlog.txt", "a") as f:
- f.writelines(log)
- for i in list(r.get_inbox()):
- try:
- if i.id not in done:
- done.append(i.id)
- with open('done', 'w') as f:
- pickle.dump(done, f)
- if i.was_comment == True:
- subj = i.permalink
- msg = i.body
- r.send_message(bot_op, subj, msg)
- if i.subject.split(" ")[0] == "re:":
- comment = r.get_submission(i.subject.split(" ")[1]).comments[0]
- comment.reply(i.body)
- except Exception as e:
- log = "Sub Error (PM): "+str(e)+" on "+i.body+" "+i.id+" @ "+str(time.time())+"\n"
- with open("errorlog.txt", "a") as f:
- f.writelines(log)
- if __name__ == "__main__":
- while True:
- try:
- main()
- except Exception as e:
- log = "General Error: "+str(e)+" @ "+str(time.time())+"\n"
- with open('errorlog.txt', 'a') as f:
- f.writelines(log)
- print "Sleeping for 2 minutes."
- time.sleep(120)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement