diff options
Diffstat (limited to 'module/plugins/hoster/DevhostSt.py')
-rw-r--r-- | module/plugins/hoster/DevhostSt.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/module/plugins/hoster/DevhostSt.py b/module/plugins/hoster/DevhostSt.py new file mode 100644 index 000000000..088ace93a --- /dev/null +++ b/module/plugins/hoster/DevhostSt.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +# +# Test links: +# http://d-h.st/mM8 + +import re + +from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo + + +class DevhostSt(SimpleHoster): + __name__ = "Devhost" + __type__ = "hoster" + __version__ = "0.01" + + __pattern__ = r'http://(?:www\.)?d-h\.st/\w+' + + __description__ = """d-h.st hoster plugin""" + __author_name__ = "zapp-brannigan" + __author_mail__ = "fuerst.reinje@web.de" + + + FILE_NAME_PATTERN = r'>Filename:</span> <div title="(?P<N>.+?)"' + FILE_SIZE_PATTERN = r'>Size:</span> (?P<S>[\d.]+) (?P<U>\w+)' + + OFFLINE_PATTERN = r'>File Not Found<' + LINK_PATTERN = r'id="downloadfile" href="(.+?)"' + + + def setup(self): + self.multiDL = True + self.chunkLimit = 1 + + + def handleFree(self): + m = re.search(self.LINK_PATTERN, self.html) + if m is None: + self.parseError("Download link not found") + + dl_url = m.group(1) + self.logDebug("Download URL = " + dl_url) + self.download(dl_url, disposition=True) + + check = self.checkDownload({'is_html': re.compile("html")}) + if check == "is_html": + self.parseError("Downloaded file is an html file") + + +getInfo = create_getInfo(DevhostSt) |