diff options
Diffstat (limited to 'pyload/plugins/hoster/FileshareInUa.py')
-rw-r--r-- | pyload/plugins/hoster/FileshareInUa.py | 83 |
1 files changed, 9 insertions, 74 deletions
diff --git a/pyload/plugins/hoster/FileshareInUa.py b/pyload/plugins/hoster/FileshareInUa.py index f2d1ed84b..08e10dccb 100644 --- a/pyload/plugins/hoster/FileshareInUa.py +++ b/pyload/plugins/hoster/FileshareInUa.py @@ -1,83 +1,18 @@ # -*- coding: utf-8 -*- -import re +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -from pyload.network.RequestFactory import getURL -from pyload.plugins.base.Hoster import Hoster -from pyload.utils import parseFileSize +class FileshareInUa(DeadHoster): + __name__ = "FileshareInUa" + __type__ = "hoster" + __version__ = "0.02" -class FileshareInUa(Hoster): - __name__ = "FileshareInUa" - __type__ = "hoster" - __version__ = "0.01" - - __pattern__ = r'http://(?:www\.)?fileshare.in.ua/[A-Za-z0-9]+' + __pattern__ = r'https?://(?:www\.)?fileshare\.in\.ua/\w{7}' __description__ = """Fileshare.in.ua hoster plugin""" - __authors__ = [("fwannmacher", "felipe@warhammerproject.com")] - - - PATTERN_FILENAME = r'<h3 class="b-filename">(.*?)</h3>' - PATTERN_FILESIZE = r'<b class="b-filesize">(.*?)</b>' - PATTERN_OFFLINE = r"This file doesn't exist, or has been removed." - - - def setup(self): - self.resumeDownload = self.multiDL = True - - def process(self, pyfile): - self.pyfile = pyfile - self.html = self.load(pyfile.url, decode=True) - - if not self._checkOnline(): - self.offline() - - pyfile.name = self._getName() - - link = self._getLink() - - if not link.startswith('http://'): - link = "http://fileshare.in.ua" + link - - self.download(link) - - def _checkOnline(self): - if re.search(self.PATTERN_OFFLINE, self.html): - return False - else: - return True - - def _getName(self): - name = re.search(self.PATTERN_FILENAME, self.html) - if name is None: - self.fail("%s: Plugin broken." % self.__name__) - - return name.group(1) - - def _getLink(self): - return re.search("<a href=\"(/get/.+)\" class=\"b-button m-blue m-big\" >", self.html).group(1) - - -def getInfo(urls): - result = [] - - for url in urls: - html = getURL(url) - - if re.search(FileshareInUa.PATTERN_OFFLINE, html): - result.append((url, 0, 1, url)) - else: - name = re.search(FileshareInUa.PATTERN_FILENAME, html) - - if name is None: - result.append((url, 0, 1, url)) - continue - - name = name.group(1) - size = re.search(FileshareInUa.PATTERN_FILESIZE, html) - size = parseFileSize(size.group(1)) + __license__ = "GPLv3" + __authors__ = [("fwannmacher", "felipe@warhammerproject.com")] - result.append((name, size, 3, url)) - yield result +getInfo = create_getInfo(FileshareInUa) |