Skip to content

Commit

Permalink
DDG/FML/Isup: work towards PEP8 compliancy
Browse files Browse the repository at this point in the history
Skipping the config options in config.py since the indented version
looks just as bad (not enough space to write the text without making
it use 5 lines).
  • Loading branch information
James Lu committed Dec 27, 2014
1 parent dd0493d commit 4a62b4a
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 24 deletions.
3 changes: 2 additions & 1 deletion DDG/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,8 @@
except:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x


def configure(advanced):
# This will be called by supybot to configure this module. advanced is
Expand Down
17 changes: 10 additions & 7 deletions DDG/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,18 +39,20 @@
except ImportError:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x

try: # Python 3

try: # Python 3
from urllib.parse import urlencode
except ImportError: # Python 2
except ImportError: # Python 2
from urllib import urlencode
try:
from bs4 import BeautifulSoup
except ImportError:
raise ImportError("Beautiful Soup 4 is required for this plugin: get it"
" at http://www.crummy.com/software/BeautifulSoup/bs4/doc/"
"#installing-beautiful-soup")
" at http://www.crummy.com/software/BeautifulSoup/bs4"
"/doc/#installing-beautiful-soup")


class DDG(callbacks.Plugin):
"""Searches for results on DuckDuckGo."""
Expand All @@ -60,7 +62,7 @@ def search(self, irc, msg, args, text):
"""<query>
Searches for <query> on DuckDuckGo (web search)."""
url = "https://duckduckgo.com/lite?" + urlencode({"q":text})
url = "https://duckduckgo.com/lite?" + urlencode({"q": text})
try:
data = utils.web.getUrl(url).decode("utf-8")
except utils.web.Error as e:
Expand All @@ -75,7 +77,8 @@ def search(self, irc, msg, args, text):
continue
try:
# 1) Get a result snippet.
snippet = res.parent.next_sibling.next_sibling.find_all("td")[-1]
snippet = res.parent.next_sibling.next_sibling.\
find_all("td")[-1]
# 2) Fetch the result link.
link = res.a.get('href')
snippet = snippet.text.strip()
Expand Down
4 changes: 3 additions & 1 deletion DDG/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,13 @@

from supybot.test import *


class DDGTestCase(PluginTestCase):
plugins = ('DDG',)

def testSearch(self):
self.assertRegexp('ddg search wikipedia', 'Wikipedia.*? - .*?https?\:\/\/')
self.assertRegexp(
'ddg search wikipedia', 'Wikipedia.*? - .*?https?\:\/\/')


# vim:set shiftwidth=4 tabstop=4 expandtab textwidth=79:
3 changes: 2 additions & 1 deletion FML/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,8 @@
except:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x


def configure(advanced):
# This will be called by supybot to configure this module. advanced is
Expand Down
13 changes: 8 additions & 5 deletions FML/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@
except ImportError:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x


class FML(callbacks.Plugin):
"""Displays entries from fmylife.com."""
Expand All @@ -51,7 +52,8 @@ def fml(self, irc, msg, args):
"""requires no arguments.
Displays a random entry from fmylife.com."""
url = 'http://api.betacie.com/view/random?key=4be9c43fc03fe&language=en'
url = ('http://api.betacie.com/view/random?key=4be9c43fc03fe'
'&language=en')
try:
data = utils.web.getUrl(url)
except utils.web.Error as e:
Expand All @@ -63,9 +65,10 @@ def fml(self, irc, msg, args):
text = tree.find('text').text
fmlid = tree.attrib['id']
url = tree.find('short_url').text
votes = ircutils.bold("[Agreed: %s / Deserved: %s]" % \
(tree.find('agree').text, tree.find('deserved').text))
s = format('\x02#%i [%s]\x02: %s - %s %u', fmlid,
votes = ircutils.bold("[Agreed: %s / Deserved: %s]" %
(tree.find('agree').text,
tree.find('deserved').text))
s = format('\x02#%i [%s]\x02: %s - %s %u', fmlid,
category, text, votes, url)
irc.reply(s)
fml = wrap(fml)
Expand Down
1 change: 1 addition & 0 deletions FML/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@

from supybot.test import *


class FMLTestCase(PluginTestCase):
plugins = ('FML',)

Expand Down
2 changes: 1 addition & 1 deletion Isup/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
except:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x

def configure(advanced):
# This will be called by supybot to configure this module. advanced is
Expand Down
18 changes: 10 additions & 8 deletions Isup/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,35 +39,37 @@
except ImportError:
# Placeholder that allows to run the plugin on a bot
# without the i18n module
_ = lambda x:x
_ = lambda x: x


class Isup(callbacks.Plugin):
"""Provides a simple command to check whether a website is up
or down (using isup.me)."""

def _getreply(self, url):
data = utils.web.getUrl("http://isup.me/%s" % url).decode("utf-8")
if "It's just you." in data:
reply = 'up'
elif "looks down from here" in data:
elif "looks down from here" in data:
reply = 'down'
elif "doesn't look like a site" in data:
reply = 'unknown'
elif "and still think we're down" in data:
return "Haven't you got anything better to do than look for hidden special replies? :P"
else:
return ("Haven't you got anything better to do than look for "
"hidden special replies? :P")
else:
return "An error occurred, please check your URL and try again."
try:
return self.registryValue("replies." + reply) % url
except TypeError:
return self.registryValue("replies." + reply)

def check(self, irc, msg, args, url):
"""<url>
Check whether a website is up or down using isup.me."""
try:
try:
url = url.split("://")[1]
except:
except:
pass
irc.reply(self._getreply(url))
check = wrap(check, ['something'])
Expand Down
1 change: 1 addition & 0 deletions Isup/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@

from supybot.test import *


class IsupTestCase(PluginTestCase):
plugins = ('Isup',)

Expand Down

0 comments on commit 4a62b4a

Please sign in to comment.