2018-07-02 10:09:02 +00:00
|
|
|
#--require-config omdbapi-api-key
|
|
|
|
|
2016-03-29 11:56:58 +00:00
|
|
|
import json
|
|
|
|
import Utils
|
|
|
|
|
|
|
|
URL_OMDB = "http://www.omdbapi.com/"
|
|
|
|
URL_IMDBTITLE = "http://imdb.com/title/%s"
|
|
|
|
|
|
|
|
class Module(object):
|
|
|
|
_name = "IMDb"
|
2018-08-31 11:55:52 +00:00
|
|
|
def __init__(self, bot, events):
|
2018-07-02 10:09:02 +00:00
|
|
|
self.bot = bot
|
2018-08-31 11:55:52 +00:00
|
|
|
events.on("received").on("command").on("imdb").hook(
|
2016-03-29 11:56:58 +00:00
|
|
|
self.imdb, min_args=1,
|
2016-04-06 11:02:44 +00:00
|
|
|
help="Search for a given title on IMDb",
|
|
|
|
usage="<movie/tv title>")
|
2016-03-29 11:56:58 +00:00
|
|
|
|
|
|
|
def imdb(self, event):
|
2018-07-02 10:09:02 +00:00
|
|
|
page = Utils.get_url(URL_OMDB, get_params={
|
|
|
|
"t": event["args"],
|
|
|
|
"apikey": self.bot.config["omdbapi-api-key"]},
|
2016-03-29 11:56:58 +00:00
|
|
|
json=True)
|
|
|
|
if page:
|
|
|
|
if "Title" in page:
|
|
|
|
event["stdout"].write("%s, %s (%s) %s (%s/10.0) %s" % (
|
|
|
|
page["Title"], page["Year"], page["Runtime"],
|
|
|
|
page["Plot"], page["imdbRating"],
|
|
|
|
URL_IMDBTITLE % page["imdbID"]))
|
|
|
|
else:
|
|
|
|
event["stderr"].write("Title not found")
|
|
|
|
else:
|
|
|
|
event["stderr"].write("Failed to load results")
|