#tob100sub.py """ tob100sub is a program that gets a list of top 100 subreddit on reddit.com and opens the a random subreddit from the list on a new tab on your default browser. """ # python imports import random import urllib2 import webbrowser import random import re from BeautifulSoup import BeautifulSoup site_name = 'http://www.redditlist.com/' def get_content(): req = urllib2.Request(site_name) site_data = urllib2.urlopen(req) content = BeautifulSoup(site_data) return content def get_subreddits(site_content): subreddits = [] table_reddits = site_content.findAll('tr', {'class': re.compile("halluc (?:bgcol)?")}) for i in range(100): name = str(table_reddits[i].find('td', {'class': 'redditname'}).a.string) subreddits.append(name) return subreddits def get_random(subreddits): randvalue = random.randrange(100) reddit_name = subreddits[randvalue].lower() return reddit_name def open_page(reddit_name): baseSite = "http://www.reddit.com/r/" redditSite = baseSite + reddit_name print "Opening: %s" % (redditSite) webbrowser.open_new_tab(redditSite) def main(): site_content = get_content() subreddits = get_subreddits(site_content) reddit_name = get_random(subreddits) open_page(reddit_name) if __name__ == '__main__': main()