diff options
Diffstat (limited to 'module/plugins/hoster')
| -rw-r--r-- | module/plugins/hoster/BayfilesCom.py | 14 | ||||
| -rw-r--r-- | module/plugins/hoster/DepositfilesCom.py | 4 | ||||
| -rw-r--r-- | module/plugins/hoster/LetitbitNet.py | 7 | ||||
| -rw-r--r-- | module/plugins/hoster/ShareRapidCom.py | 4 | ||||
| -rw-r--r-- | module/plugins/hoster/TurbobitNet.py | 9 | ||||
| -rw-r--r-- | module/plugins/hoster/XFileSharingPro.py | 5 | 
6 files changed, 24 insertions, 19 deletions
| diff --git a/module/plugins/hoster/BayfilesCom.py b/module/plugins/hoster/BayfilesCom.py index a6211ed1b..190d9a952 100644 --- a/module/plugins/hoster/BayfilesCom.py +++ b/module/plugins/hoster/BayfilesCom.py @@ -26,13 +26,13 @@ class BayfilesCom(SimpleHoster):      __name__ = "BayfilesCom"      __type__ = "hoster"      __pattern__ = r"http://(?:www\.)?bayfiles\.com/file/\w+/\w+/.*" -    __version__ = "0.03" +    __version__ = "0.04"      __description__ = """Bayfiles.com plugin - free only"""      __author_name__ = ("zoidberg")      __author_mail__ = ("zoidberg@mujmail.cz")      FILE_INFO_PATTERN = r'<p title="(?P<N>[^"]+)">[^<]*<strong>(?P<S>[0-9., ]+)(?P<U>[kKMG])i?B</strong></p>' -    FILE_OFFLINE_PATTERN = r'<p>The requested file could not be found.</p>' +    FILE_OFFLINE_PATTERN = r'(<p>The requested file could not be found.</p>|<title>404 Not Found</title>)'      WAIT_PATTERN = r'>Your IP [0-9.]* has recently downloaded a file\. Upgrade to premium or wait (\d+) minutes\.<'      VARS_PATTERN = r'var vfid = (\d+);\s*var delay = (\d+);' @@ -82,12 +82,12 @@ class BayfilesCom(SimpleHoster):          self.download(url)          # check download          check = self.checkDownload({ -            "waitforfreeslots": re.compile(r"^<title>BayFiles</title>$") +            "waitforfreeslots": re.compile(r"<title>BayFiles</title>"), +            "notfound": re.compile(r"<title>404 Not Found</title>")              })          if check == "waitforfreeslots": -            self.waitForFreeSlot() - -    def waitForFreeSlot(self): -        self.retry(60, 300, "Wait for free slot") +            self.retry(60, 300, "Wait for free slot") +        elif check == "notfound": +            self.retry(60, 300, "404 Not found")  getInfo = create_getInfo(BayfilesCom) diff --git a/module/plugins/hoster/DepositfilesCom.py b/module/plugins/hoster/DepositfilesCom.py index b3ba1ea73..9ff6b0b55 100644 --- a/module/plugins/hoster/DepositfilesCom.py +++ b/module/plugins/hoster/DepositfilesCom.py @@ -11,7 +11,7 @@ class DepositfilesCom(SimpleHoster):      __name__ = "DepositfilesCom"      __type__ = "hoster"      __pattern__ = r"http://[\w\.]*?depositfiles\.com(/\w{1,3})?/files/[\w]+" -    __version__ = "0.40" +    __version__ = "0.41"      __description__ = """Depositfiles.com Download Hoster"""      __author_name__ = ("spoob", "zoidberg")      __author_mail__ = ("spoob@pyload.org", "zoidberg@mujmail.cz") @@ -101,7 +101,7 @@ class DepositfilesCom(SimpleHoster):              self.logWarning("Download limit reached")              self.retry(25, 3600, "Download limit reached")          elif 'onClick="show_gold_offer' in self.html: -            self.account.relogin() +            self.account.relogin(self.user)              self.retry()          link = unquote(re.search('<div id="download_url">\s*<a href="(http://.+?\.depositfiles.com/.+?)"', self.html).group(1))          self.multiDL = True diff --git a/module/plugins/hoster/LetitbitNet.py b/module/plugins/hoster/LetitbitNet.py index e5fc055c0..88e708bf5 100644 --- a/module/plugins/hoster/LetitbitNet.py +++ b/module/plugins/hoster/LetitbitNet.py @@ -24,7 +24,7 @@ from module.common.json_layer import json_loads  class LetitbitNet(SimpleHoster):      __name__ = "LetitbitNet"      __type__ = "hoster" -    __pattern__ = r"http://(?:\w*\.)*letitbit.net/download/.*" +    __pattern__ = r"http://(?:\w*\.)*(letitbit|shareflare).net/download/.*"      __version__ = "0.19"      __description__ = """letitbit.net"""      __author_name__ = ("zoidberg") @@ -35,8 +35,9 @@ class LetitbitNet(SimpleHoster):      FILE_INFO_PATTERN = r'<h1[^>]*>File:.*?<span>(?P<N>[^<]+)</span>.*?\[<span>(?P<S>[^<]+)</span>]</h1>'      FILE_OFFLINE_PATTERN = r'>File not found<' -     +             DOMAIN = "http://letitbit.net" +    FILE_URL_REPLACEMENTS = [(r"(?<=http://)([^/]+)", "letitbit.net")]      def setup(self):          self.resumeDownload = self.multiDL = True @@ -106,4 +107,4 @@ class LetitbitNet(SimpleHoster):          else:              self.fail("Download did not finish correctly") -getInfo = create_getInfo(LetitbitNet) +getInfo = create_getInfo(LetitbitNet)
\ No newline at end of file diff --git a/module/plugins/hoster/ShareRapidCom.py b/module/plugins/hoster/ShareRapidCom.py index b9ce61e18..6859b3d9f 100644 --- a/module/plugins/hoster/ShareRapidCom.py +++ b/module/plugins/hoster/ShareRapidCom.py @@ -23,7 +23,7 @@ class ShareRapidCom(SimpleHoster):      __name__ = "ShareRapidCom"      __type__ = "hoster"      __pattern__ = r"http://(?:www\.)?((share(-?rapid\.(biz|com|cz|info|eu|net|org|pl|sk)|-(central|credit|free|net)\.cz|-ms\.net)|(s-?rapid|rapids)\.(cz|sk))|(e-stahuj|mediatack|premium-rapidshare|rapidshare-premium|qiuck)\.cz|kadzet\.com|stahuj-zdarma\.eu|strelci\.net|universal-share\.com)/(stahuj/.+)" -    __version__ = "0.47" +    __version__ = "0.48"      __description__ = """Share-rapid.com plugin - premium only"""      __author_name__ = ("MikyWoW", "zoidberg")      __author_mail__ = ("MikyWoW@seznam.cz", "zoidberg@mujmail.cz") @@ -60,7 +60,7 @@ class ShareRapidCom(SimpleHoster):          else:              self.logError("Download URL not found")              if re.search(self.ERR_LOGIN_PATTERN, self.html): -                self.relogin() +                self.relogin(self.user)                  self.retry(3,0,"User login failed")              elif re.search(self.ERR_CREDIT_PATTERN, self.html):                  self.fail("Not enough credit left") diff --git a/module/plugins/hoster/TurbobitNet.py b/module/plugins/hoster/TurbobitNet.py index f4626f49a..9de7f9bd0 100644 --- a/module/plugins/hoster/TurbobitNet.py +++ b/module/plugins/hoster/TurbobitNet.py @@ -26,8 +26,8 @@ from pycurl import HTTPHEADER  class TurbobitNet(SimpleHoster):      __name__ = "TurbobitNet"      __type__ = "hoster" -    __pattern__ = r"http://(?:\w*\.)?turbobit.net/(?:download/free/)?(?P<ID>\w+).*" -    __version__ = "0.04" +    __pattern__ = r"http://(?:\w*\.)?(turbobit.net|unextfiles.com)/(?:download/free/)?(?P<ID>\w+).*" +    __version__ = "0.05"      __description__ = """Turbobit.net plugin"""      __author_name__ = ("zoidberg")      __author_mail__ = ("zoidberg@mujmail.cz") @@ -35,7 +35,7 @@ class TurbobitNet(SimpleHoster):      FILE_INFO_PATTERN = r"<span class='file-icon1[^>]*>(?P<N>[^<]+)</span>\s*\((?P<S>[^\)]+)\)\s*</h1>" #long filenames are shortened      FILE_NAME_PATTERN = r'<meta name="keywords" content="\s*(?P<N>[^,]+)' #full name but missing on page2      FILE_OFFLINE_PATTERN = r'<h2>File Not Found</h2>' -    FILE_URL_REPLACEMENTS = [(r'(?<=http://)(.*?)(?=turbobit.net/)', '')] +    FILE_URL_REPLACEMENTS = [(r"(?<=http://)([^/]+)", "turbobit.net")]      SH_COOKIES = [("turbobit.net", "user_lang", "en")]      CAPTCHA_KEY_PATTERN = r'src="http://api\.recaptcha\.net/challenge\?k=([^"]+)"' @@ -53,7 +53,8 @@ class TurbobitNet(SimpleHoster):          for i in range(5):              found = re.search(self.LIMIT_WAIT_PATTERN, self.html)              if found: -                self.setWait(int(found.group(1)), True) +                wait_time = int(found.group(1)) +                self.setWait(wait_time, wait_time > 60)                  self.wait()                  self.retry() diff --git a/module/plugins/hoster/XFileSharingPro.py b/module/plugins/hoster/XFileSharingPro.py index 7cc63f4ae..b7b7803f5 100644 --- a/module/plugins/hoster/XFileSharingPro.py +++ b/module/plugins/hoster/XFileSharingPro.py @@ -34,7 +34,7 @@ class XFileSharingPro(SimpleHoster):      __name__ = "XFileSharingPro"      __type__ = "hoster"      __pattern__ = r"http://(?:\w*\.)*((aieshare|amonshare|asixfiles|azsharing|banashare|batubia|bebasupload|boosterking|buckshare|bulletupload|crocshare|ddlanime|divxme|dopeshare|downupload|eyesfile|eyvx|fik1|file(4safe|4sharing|band|beep|bit|box|dove|fat|forth|made|mak|planet|playgroud|race|rio|strack|upper|velocity)|fooget|4bytez|freefilessharing|glumbouploads|grupload|heftyfile|hipfile|host4desi|hulkshare.com|idupin|imageporter|isharefast|jalurcepat|kingsupload|laoupload|linkzhost|loombo|maknyos|migahost|mlfat4arab|movreel|netuploaded|ok2upload|180upload|1hostclick|ovfile|putshare|pyramidfiles|q4share|queenshare|ravishare|rockdizfile|sendmyway|share(76|beast|hut|run|swift)|sharingonline|6ybh-upload|skipfile|spaadyshare|space4file|speedoshare|upload(baz|boost|c|dot|floor|ic|dville)|uptobox|vidbull|zalaa|zomgupload)\.com|(kupload|movbay|multishare|omegave|toucansharing|uflinq)\.org|(annonhost|fupload|muchshare|supashare|tusfiles|usershare|xuploading)\.net|(banicrazy|flowhot|upbrasil)\.info|(shareyourfilez)|.biz|(bzlink|)\.us|(cloudcache|fileserver)\.cc|(farshare|kingshare)\.to|(filemaze|filehost)\.ws|(goldfile|xfileshare)\.eu|(filestock|moidisk)\.ru|4up\.me|kfiles\.kz|odsiebie\.pl|upchi\.co\.il|upit\.in|verzend\.be)/\w{12}"  -    __version__ = "0.04" +    __version__ = "0.05"      __description__ = """XFileSharingPro common hoster base"""      __author_name__ = ("zoidberg")      __author_mail__ = ("zoidberg@mujmail.cz") @@ -55,6 +55,7 @@ class XFileSharingPro(SimpleHoster):      DIRECT_LINK_PATTERN = r'This direct link.*?href=["\'](.*?)["\']'      def setup(self): +        self.__pattern__ = self.core.pluginManager.hosterPlugins[self.__name__]['pattern']          self.HOSTER_NAME = re.search(self.__pattern__, self.pyfile.url).group(1)          self.multiDL = True  @@ -159,6 +160,8 @@ class XFileSharingPro(SimpleHoster):                  self.tempOffline()              elif 'download files up to' in self.errmsg:                  self.fail("File too large for free download") +            elif 'requires premium' in self.errmsg: +                self.fail("File can be downloaded by premium users only")          else:              self.errmsg = None | 
