Skip to content

Instantly share code, notes, and snippets.

@Echocage
Created June 10, 2014 12:09
Show Gist options
  • Save Echocage/cc959b43443c22be08e0 to your computer and use it in GitHub Desktop.
Save Echocage/cc959b43443c22be08e0 to your computer and use it in GitHub Desktop.
import time
import sys
import praw
# ==========================================
# ===============Configuration==============
user = 'dogetipbot'
# ==========================================
# ==========================================
r = praw.Reddit('Reminds trip96 when dogetipbot posts '
'by /u/echocage') # Feel free to edit the by
previous_posts = []
def get_new_posts(username, reddit_user):
posts = [post for post in reddit_user.get_comments() if post not in previous_posts]
return posts
def add_previous_posts():
reddit_user = r.get_redditor(user)
for previous_post in get_new_posts(user, reddit_user):
previous_posts.append(previous_post) # add old posts to the array
def process(text):
text = text.split(':')[1][1:]
for x in [' ', ['->', '->'], '^', '_', '^', '[[help]](http']:
if type(x) is list:
text = text.replace(x[0], x[1])
else:
text = text.replace(x, '')
return text
add_previous_posts()
print 'Listening....'
while True:
try:
reddit_user = r.get_redditor(user)
for previous_post in get_new_posts(user, reddit_user):
print process(previous_post.body)
previous_posts.append(previous_post)
time.sleep(5)
except praw.errors.RateLimitExceeded as err:
print "Rate Limit Exceeded:\n" + str(err), sys.stderr
time.sleep(err.sleep_time + .05)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment