1from urllib.parse import quote_plus 2 3import praw 4 5QUESTIONS = ["what is", "who is", "what are"] 6REPLY_TEMPLATE = "[Let me google that for you](http://lmgtfy.com/?q={})" 7 8 9def main(): 10 reddit = praw.Reddit( 11 user_agent="LMGTFY (by /u/USERNAME)", 12 client_id="CLIENT_ID", 13 client_secret="CLIENT_SECRET", 14 username="USERNAME", 15 password="PASSWORD", 16 ) 17 18 subreddit = reddit.subreddit("AskReddit") 19 for submission in subreddit.stream.submissions(): 20 process_submission(submission) 21 22 23def process_submission(submission): 24 # Ignore titles with more than 10 words as they probably are not simple 25 # questions. 26 if len(submission.title.split()) > 10: 27 return 28 29 normalized_title = submission.title.lower() 30 for question_phrase in QUESTIONS: 31 if question_phrase in normalized_title: 32 url_title = quote_plus(submission.title) 33 reply_text = REPLY_TEMPLATE.format(url_title) 34 print("Replying to: {}".format(submission.title)) 35 submission.reply(reply_text) 36 # A reply has been made so do not attempt to match other phrases. 37 break 38 39 40if __name__ == "__main__": 41 main() 42