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