From bdba84f861b9b70719499e81f6f801e6fd38f38d Mon Sep 17 00:00:00 2001 From: Luke Rogers Date: Thu, 23 Feb 2012 23:49:06 +1300 Subject: [PATCH] Added plugins/fmylife, fixed plugins/util/misc.py --- plugins/fmylife.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 plugins/fmylife.py diff --git a/plugins/fmylife.py b/plugins/fmylife.py new file mode 100644 index 0000000..fbc88af --- /dev/null +++ b/plugins/fmylife.py @@ -0,0 +1,24 @@ +import re + +from util import hook, http, misc +from urllib2 import HTTPError +from BeautifulSoup import BeautifulSoup + +url = 'http://www.fmylife.com/random' + +@hook.command(autohelp=False) +def fml(inp): + ".fml -- gets a random quote from fmyfife.com" + + try: + page = http.get(url) + except (HTTPError, IOError): + return "I tried to use .fml, but it was broken. FML" + + soup = BeautifulSoup(page) + + soup.find('div', id='submit').extract() + post = soup.body.find('div', 'post') + id = int(post.find('a', 'fmllink')['href'].split('/')[-1]) + body = misc.strip_html(' '.join(link.renderContents() for link in post('a', 'fmllink'))) + return '(#%d) %s' % (id, body)