#!/usr/bin/env python # -*- coding: utf-8 -*- import re from module.plugins.Crypter import Crypter class HoerbuchIn(Crypter): __name__ = "HoerbuchIn" __type__ = "container" __pattern__ = r"http://(www\.)?hoerbuch\.in/(blog\.php\?id=|download_(.*)\.html)" __version__ = "0.4" __description__ = """Hoerbuch.in Container Plugin""" __author_name__ = ("spoob") __author_mail__ = ("spoob@pyload.org") def __init__(self, parent): Crypter.__init__(self, parent) self.parent = parent self.html = None def download_html(self): url = self.parent.url self.html = self.req.load(url) def file_exists(self): """ returns True or False """ self.download_html() if re.search(r"Download", self.html) is not None: return True return False def proceed(self, url, location): temp_links = [] download_container = ("Download", "Mirror #1", "Mirror #2", "Mirror #3") for container in download_container: download_content = re.search("<BR><B>" + container + ":</B>(.*?)<BR><B>", self.html).group(1) tmp = re.findall('<A HREF="http://www.hoerbuch.in/cj/out.php\?pct=\d+&url=(http://rs\.hoerbuch\.in/.+?)" TARGET="_blank">Part \d+</A>', download_content) if tmp == []: continue for link in tmp: link_html = self.req.load(link, cookies=True) temp_links.append(re.search('<FORM ACTION="(http://.*?)" METHOD="post"', link_html).group(1)) break self.links = temp_links