From 52052a6255a7655f051242d1f5c6af650a12d682 Mon Sep 17 00:00:00 2001 From: James Bunton Date: Wed, 3 Oct 2012 11:24:27 +1000 Subject: [PATCH] Improve Plus7 titles --- plus7.py | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/plus7.py b/plus7.py index 6a51b2f..7760f2c 100644 --- a/plus7.py +++ b/plus7.py @@ -12,9 +12,37 @@ BROWSE = BASE + "/plus7/browse/" HASH_URL = "http://d.yimg.com/nl/australia/au-tv/player.swf" HASH_URL = "http://d.yimg.com/m/up/ypp/au/player.swf" +def extract_and_remove(tokens, key): + lowertokens = [x.lower() for x in tokens] + pos = lowertokens.index(key) + + value = int(tokens[pos+1]) + tokens = tokens[:pos] + tokens[pos+2:] + + return value, tokens + + +def demangle_title(title): + # Postman Pat - Postman Pat and the Runaway Kite Series 1 Episode 1 + tokens = title.split() + + try: + season, tokens = extract_and_remove(tokens, "series") + episode, tokens = extract_and_remove(tokens, "episode") + except ValueError: + return title + + try: + i = tokens.index("-") + 1 + except ValueError: + i = 0 + tokens.insert(i, "%sx%s - " % (season, str(episode).zfill(2))) + + return " ".join(tokens) + class Plus7Node(Node): def __init__(self, title, parent, url): - Node.__init__(self, title, parent) + Node.__init__(self, demangle_title(title), parent) self.url = url self.can_download = True -- 2.39.2